From 3e3e0a25f97fec227a9356e6725641c8dc88ee20 Mon Sep 17 00:00:00 2001 From: Rahul Krishna Date: Thu, 6 Feb 2025 19:21:02 -0500 Subject: [PATCH 01/12] Add plantsbywebsphere as a new test application Signed-off-by: Rahul Krishna --- .../plantsbywebsphere/.gitignore | 49 ++ .../plantsbywebsphere/LICENSE | 201 +++++++ .../plantsbywebsphere/README.md | 40 ++ .../plantsbywebsphere/build.gradle | 91 +++ .../gradle/wrapper/gradle-wrapper.properties | 5 + .../plantsbywebsphere/gradlew | 172 ++++++ .../plantsbywebsphere/gradlew.bat | 84 +++ .../plantsbywebsphere/settings.gradle | 1 + .../samples/pbw/bean/BackOrderMgr.java | 238 ++++++++ .../samples/pbw/bean/CatalogMgr.java | 205 +++++++ .../samples/pbw/bean/CustomerMgr.java | 176 ++++++ .../samples/pbw/bean/EMailMessage.java | 57 ++ .../samples/pbw/bean/MailerAppException.java | 37 ++ .../samples/pbw/bean/MailerBean.java | 137 +++++ .../samples/pbw/bean/NoSupplierException.java | 35 ++ .../samples/pbw/bean/PopulateDBBean.java | 23 + .../samples/pbw/bean/ResetDBBean.java | 343 ++++++++++++ .../samples/pbw/bean/ShoppingCartBean.java | 347 ++++++++++++ .../samples/pbw/bean/ShoppingCartContent.java | 97 ++++ .../samples/pbw/bean/SuppliersBean.java | 144 +++++ .../websphere/samples/pbw/jpa/BackOrder.java | 135 +++++ .../websphere/samples/pbw/jpa/Customer.java | 204 +++++++ .../websphere/samples/pbw/jpa/Inventory.java | 312 +++++++++++ .../ibm/websphere/samples/pbw/jpa/Order.java | 393 +++++++++++++ .../websphere/samples/pbw/jpa/OrderItem.java | 228 ++++++++ .../websphere/samples/pbw/jpa/OrderKey.java | 81 +++ .../websphere/samples/pbw/jpa/Supplier.java | 135 +++++ .../samples/pbw/utils/ListProperties.java | 155 ++++++ .../ibm/websphere/samples/pbw/utils/Util.java | 311 +++++++++++ .../samples/pbw/war/AccountBean.java | 260 +++++++++ .../samples/pbw/war/AccountServlet.java | 339 +++++++++++ .../samples/pbw/war/AdminServlet.java | 384 +++++++++++++ .../samples/pbw/war/BackOrderItem.java | 209 +++++++ .../websphere/samples/pbw/war/HelpBean.java | 86 +++ .../samples/pbw/war/ImageServlet.java | 104 ++++ .../websphere/samples/pbw/war/LoginInfo.java | 72 +++ .../websphere/samples/pbw/war/MailAction.java | 64 +++ .../websphere/samples/pbw/war/OrderInfo.java | 519 +++++++++++++++++ .../websphere/samples/pbw/war/Populate.java | 303 ++++++++++ .../samples/pbw/war/ProductBean.java | 82 +++ .../samples/pbw/war/ShoppingBean.java | 181 ++++++ .../samples/pbw/war/ShoppingItem.java | 374 +++++++++++++ .../samples/pbw/war/ValidatePasswords.java | 49 ++ .../samples/pbw/war/ValidatorUtils.java | 43 ++ .../src/main/liberty/config/server.xml | 39 ++ .../main/resources/META-INF/persistence.xml | 14 + .../src/main/resources/pbw.properties | 58 ++ .../main/webapp/WEB-INF/PlantTemplate.xhtml | 139 +++++ .../src/main/webapp/WEB-INF/beans.xml | 7 + .../src/main/webapp/WEB-INF/faces-config.xml | 19 + .../main/webapp/WEB-INF/ibm-ejb-jar-bnd.xml | 10 + .../src/main/webapp/WEB-INF/ibm-web-bnd.xml | 10 + .../src/main/webapp/WEB-INF/ibm-web-ext.xml | 14 + .../src/main/webapp/WEB-INF/web.xml | 69 +++ .../src/main/webapp/account.xhtml | 254 +++++++++ .../src/main/webapp/admin.html | 39 ++ .../src/main/webapp/adminactions.html | 74 +++ .../src/main/webapp/adminbanner.html | 58 ++ .../src/main/webapp/applycss.js | 27 + .../src/main/webapp/backorderadmin.jsp | 526 ++++++++++++++++++ .../src/main/webapp/cart.xhtml | 171 ++++++ .../src/main/webapp/checkout_final.xhtml | 339 +++++++++++ .../src/main/webapp/collectionform.js | 188 +++++++ .../src/main/webapp/error.jsp | 156 ++++++ .../src/main/webapp/help.xhtml | 100 ++++ .../src/main/webapp/index.html | 1 + .../src/main/webapp/login.xhtml | 135 +++++ .../src/main/webapp/orderdone.xhtml | 80 +++ .../src/main/webapp/orderinfo.xhtml | 516 +++++++++++++++++ .../src/main/webapp/product.xhtml | 138 +++++ .../src/main/webapp/promo.xhtml | 170 ++++++ .../src/main/webapp/register.xhtml | 332 +++++++++++ .../webapp/resources/images/1x1_trans.gif | Bin 0 -> 43 bytes .../images/accessories_birdfeeder.jpg | Bin 0 -> 70368 bytes .../images/accessories_birdhouse.jpg | Bin 0 -> 74635 bytes .../images/accessories_bulbdigger.jpg | Bin 0 -> 75023 bytes .../images/accessories_finchfood.jpg | Bin 0 -> 77269 bytes .../resources/images/accessories_gloves.jpg | Bin 0 -> 79865 bytes .../images/accessories_grassrake.jpg | Bin 0 -> 76553 bytes .../resources/images/accessories_handrake.jpg | Bin 0 -> 66192 bytes .../resources/images/accessories_leafrake.jpg | Bin 0 -> 74032 bytes .../resources/images/accessories_pot.jpg | Bin 0 -> 72808 bytes .../resources/images/accessories_shovel.jpg | Bin 0 -> 65409 bytes .../images/accessories_wheelbarrow.jpg | Bin 0 -> 58439 bytes .../webapp/resources/images/add_to_cart.jpg | Bin 0 -> 2826 bytes .../resources/images/button_add_to_cart.gif | Bin 0 -> 631 bytes .../webapp/resources/images/button_change.gif | Bin 0 -> 534 bytes .../resources/images/button_checkout.gif | Bin 0 -> 626 bytes .../resources/images/button_checkout_now.gif | Bin 0 -> 763 bytes .../resources/images/button_continue.gif | Bin 0 -> 592 bytes .../images/button_continue_shopping.gif | Bin 0 -> 886 bytes .../webapp/resources/images/button_go.gif | Bin 0 -> 200 bytes .../webapp/resources/images/button_more.gif | Bin 0 -> 172 bytes .../resources/images/button_previous.gif | Bin 0 -> 173 bytes .../resources/images/button_recalculate.gif | Bin 0 -> 618 bytes .../resources/images/button_register.gif | Bin 0 -> 487 bytes .../resources/images/button_sign_in.gif | Bin 0 -> 485 bytes .../resources/images/button_submit_order.gif | Bin 0 -> 636 bytes .../webapp/resources/images/button_update.gif | Bin 0 -> 473 bytes .../webapp/resources/images/creditcards.bmp | Bin 0 -> 7214 bytes .../images/flower_african_orchid.jpg | Bin 0 -> 58715 bytes .../resources/images/flower_bbreath.jpg | Bin 0 -> 68027 bytes .../images/flower_black-eyed_susan.jpg | Bin 0 -> 65749 bytes .../webapp/resources/images/flower_coleus.jpg | Bin 0 -> 71452 bytes .../resources/images/flower_daisies.jpg | Bin 0 -> 73233 bytes .../resources/images/flower_foxglove.jpg | Bin 0 -> 66964 bytes .../resources/images/flower_geranium.jpg | Bin 0 -> 58701 bytes .../images/flower_goodnight_moon_iris.jpg | Bin 0 -> 50567 bytes .../resources/images/flower_impatiens.jpg | Bin 0 -> 47059 bytes .../webapp/resources/images/flower_lily.jpg | Bin 0 -> 59056 bytes .../resources/images/flower_pansies.jpg | Bin 0 -> 70834 bytes .../resources/images/flower_petunias.jpg | Bin 0 -> 52478 bytes .../resources/images/flower_primrose.jpg | Bin 0 -> 50558 bytes .../images/flower_red_poinsettia.jpg | Bin 0 -> 71478 bytes .../resources/images/flower_red_rose.jpg | Bin 0 -> 66168 bytes .../images/flower_sparkler_celosia.jpg | Bin 0 -> 77277 bytes .../webapp/resources/images/flower_tulips.jpg | Bin 0 -> 50805 bytes .../resources/images/flower_tulips_48.jpg | Bin 0 -> 4319 bytes .../images/flower_white_poinsettia.jpg | Bin 0 -> 66598 bytes .../resources/images/flower_white_rose.jpg | Bin 0 -> 40043 bytes .../webapp/resources/images/flower_zinnia.jpg | Bin 0 -> 59634 bytes .../src/main/webapp/resources/images/go.gif | Bin 0 -> 172 bytes .../resources/images/item_selection.jpg | Bin 0 -> 1463 bytes .../main/webapp/resources/images/more_btn.gif | Bin 0 -> 864 bytes .../src/main/webapp/resources/images/pbw.jpg | Bin 0 -> 4387 bytes .../resources/images/poweredby_WebSphere.gif | Bin 0 -> 1387 bytes .../main/webapp/resources/images/required.gif | Bin 0 -> 56 bytes .../resources/images/sapling_whitepine_48.jpg | Bin 0 -> 2836 bytes .../webapp/resources/images/seeds_promo.gif | Bin 0 -> 8200 bytes .../resources/images/strawberries_48.jpg | Bin 0 -> 4902 bytes .../resources/images/tab_accessories_s.gif | Bin 0 -> 756 bytes .../resources/images/tab_accessories_u.gif | Bin 0 -> 1038 bytes .../webapp/resources/images/tab_flowers_s.gif | Bin 0 -> 599 bytes .../webapp/resources/images/tab_flowers_u.gif | Bin 0 -> 1156 bytes .../webapp/resources/images/tab_trees_s.gif | Bin 0 -> 501 bytes .../webapp/resources/images/tab_trees_u.gif | Bin 0 -> 734 bytes .../webapp/resources/images/tab_veggies_s.gif | Bin 0 -> 1039 bytes .../webapp/resources/images/tab_veggies_u.gif | Bin 0 -> 1875 bytes .../resources/images/tabs_background.jpg | Bin 0 -> 746 bytes .../resources/images/tabs_background_a.gif | Bin 0 -> 477 bytes .../resources/images/tabs_background_b.gif | Bin 0 -> 198 bytes .../webapp/resources/images/theme_summer1.gif | Bin 0 -> 144521 bytes .../webapp/resources/images/theme_summer2.gif | Bin 0 -> 2582 bytes .../resources/images/theme_summer_text.gif | Bin 0 -> 7591 bytes .../webapp/resources/images/trees_ash.jpg | Bin 0 -> 78899 bytes .../webapp/resources/images/trees_aspen.jpg | Bin 0 -> 60477 bytes .../webapp/resources/images/trees_bonsai.jpg | Bin 0 -> 41463 bytes .../resources/images/trees_bonsai_48.jpg | Bin 0 -> 3906 bytes .../webapp/resources/images/trees_crab.jpg | Bin 0 -> 57062 bytes .../webapp/resources/images/trees_maple.jpg | Bin 0 -> 73634 bytes .../webapp/resources/images/tulips_48.jpg | Bin 0 -> 4319 bytes .../resources/images/veggies_cabbage.jpg | Bin 0 -> 66397 bytes .../resources/images/veggies_gourds.jpg | Bin 0 -> 50295 bytes .../resources/images/veggies_grapes.jpg | Bin 0 -> 52844 bytes .../webapp/resources/images/veggies_onion.jpg | Bin 0 -> 47542 bytes .../resources/images/veggies_pineapple.jpg | Bin 0 -> 59667 bytes .../resources/images/veggies_strawberries.jpg | Bin 0 -> 85045 bytes .../images/veggies_strawberries_48.jpg | Bin 0 -> 4902 bytes .../resources/images/veggies_watermelon.jpg | Bin 0 -> 53005 bytes .../resources/javascript/PlantsScripts.js | 88 +++ .../main/webapp/resources/theme/PlantMain.css | 321 +++++++++++ .../webapp/resources/theme/PlantMain_ns.css | 254 +++++++++ .../src/main/webapp/shopping.xhtml | 98 ++++ .../src/main/webapp/supplierconfig.jsp | 291 ++++++++++ .../src/main/webapp/theme/stylesheet.css | 187 +++++++ .../src/main/webapp/viewExpired.xhtml | 35 ++ 166 files changed, 12462 insertions(+) create mode 100644 src/test/resources/test-applications/plantsbywebsphere/.gitignore create mode 100644 src/test/resources/test-applications/plantsbywebsphere/LICENSE create mode 100644 src/test/resources/test-applications/plantsbywebsphere/README.md create mode 100644 src/test/resources/test-applications/plantsbywebsphere/build.gradle create mode 100644 src/test/resources/test-applications/plantsbywebsphere/gradle/wrapper/gradle-wrapper.properties create mode 100755 src/test/resources/test-applications/plantsbywebsphere/gradlew create mode 100755 src/test/resources/test-applications/plantsbywebsphere/gradlew.bat create mode 100644 src/test/resources/test-applications/plantsbywebsphere/settings.gradle create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/bean/BackOrderMgr.java create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/bean/CatalogMgr.java create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/bean/CustomerMgr.java create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/bean/EMailMessage.java create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/bean/MailerAppException.java create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/bean/MailerBean.java create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/bean/NoSupplierException.java create mode 100644 src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/bean/PopulateDBBean.java create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/bean/ResetDBBean.java create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/bean/ShoppingCartBean.java create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/bean/ShoppingCartContent.java create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/bean/SuppliersBean.java create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/jpa/BackOrder.java create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/jpa/Customer.java create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/jpa/Inventory.java create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/jpa/Order.java create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/jpa/OrderItem.java create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/jpa/OrderKey.java create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/jpa/Supplier.java create mode 100644 src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/utils/ListProperties.java create mode 100644 src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/utils/Util.java create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/war/AccountBean.java create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/war/AccountServlet.java create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/war/AdminServlet.java create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/war/BackOrderItem.java create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/war/HelpBean.java create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/war/ImageServlet.java create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/war/LoginInfo.java create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/war/MailAction.java create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/war/OrderInfo.java create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/war/Populate.java create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/war/ProductBean.java create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/war/ShoppingBean.java create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/war/ShoppingItem.java create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/war/ValidatePasswords.java create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/war/ValidatorUtils.java create mode 100644 src/test/resources/test-applications/plantsbywebsphere/src/main/liberty/config/server.xml create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/resources/META-INF/persistence.xml create mode 100644 src/test/resources/test-applications/plantsbywebsphere/src/main/resources/pbw.properties create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/WEB-INF/PlantTemplate.xhtml create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/WEB-INF/beans.xml create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/WEB-INF/faces-config.xml create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/WEB-INF/ibm-ejb-jar-bnd.xml create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/WEB-INF/ibm-web-bnd.xml create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/WEB-INF/ibm-web-ext.xml create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/WEB-INF/web.xml create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/account.xhtml create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/admin.html create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/adminactions.html create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/adminbanner.html create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/applycss.js create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/backorderadmin.jsp create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/cart.xhtml create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/checkout_final.xhtml create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/collectionform.js create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/error.jsp create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/help.xhtml create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/index.html create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/login.xhtml create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/orderdone.xhtml create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/orderinfo.xhtml create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/product.xhtml create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/promo.xhtml create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/register.xhtml create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/1x1_trans.gif create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/accessories_birdfeeder.jpg create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/accessories_birdhouse.jpg create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/accessories_bulbdigger.jpg create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/accessories_finchfood.jpg create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/accessories_gloves.jpg create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/accessories_grassrake.jpg create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/accessories_handrake.jpg create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/accessories_leafrake.jpg create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/accessories_pot.jpg create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/accessories_shovel.jpg create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/accessories_wheelbarrow.jpg create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/add_to_cart.jpg create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/button_add_to_cart.gif create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/button_change.gif create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/button_checkout.gif create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/button_checkout_now.gif create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/button_continue.gif create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/button_continue_shopping.gif create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/button_go.gif create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/button_more.gif create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/button_previous.gif create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/button_recalculate.gif create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/button_register.gif create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/button_sign_in.gif create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/button_submit_order.gif create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/button_update.gif create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/creditcards.bmp create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/flower_african_orchid.jpg create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/flower_bbreath.jpg create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/flower_black-eyed_susan.jpg create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/flower_coleus.jpg create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/flower_daisies.jpg create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/flower_foxglove.jpg create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/flower_geranium.jpg create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/flower_goodnight_moon_iris.jpg create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/flower_impatiens.jpg create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/flower_lily.jpg create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/flower_pansies.jpg create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/flower_petunias.jpg create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/flower_primrose.jpg create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/flower_red_poinsettia.jpg create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/flower_red_rose.jpg create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/flower_sparkler_celosia.jpg create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/flower_tulips.jpg create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/flower_tulips_48.jpg create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/flower_white_poinsettia.jpg create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/flower_white_rose.jpg create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/flower_zinnia.jpg create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/go.gif create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/item_selection.jpg create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/more_btn.gif create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/pbw.jpg create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/poweredby_WebSphere.gif create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/required.gif create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/sapling_whitepine_48.jpg create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/seeds_promo.gif create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/strawberries_48.jpg create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/tab_accessories_s.gif create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/tab_accessories_u.gif create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/tab_flowers_s.gif create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/tab_flowers_u.gif create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/tab_trees_s.gif create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/tab_trees_u.gif create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/tab_veggies_s.gif create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/tab_veggies_u.gif create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/tabs_background.jpg create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/tabs_background_a.gif create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/tabs_background_b.gif create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/theme_summer1.gif create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/theme_summer2.gif create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/theme_summer_text.gif create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/trees_ash.jpg create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/trees_aspen.jpg create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/trees_bonsai.jpg create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/trees_bonsai_48.jpg create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/trees_crab.jpg create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/trees_maple.jpg create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/tulips_48.jpg create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/veggies_cabbage.jpg create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/veggies_gourds.jpg create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/veggies_grapes.jpg create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/veggies_onion.jpg create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/veggies_pineapple.jpg create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/veggies_strawberries.jpg create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/veggies_strawberries_48.jpg create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/veggies_watermelon.jpg create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/javascript/PlantsScripts.js create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/theme/PlantMain.css create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/theme/PlantMain_ns.css create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/shopping.xhtml create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/supplierconfig.jsp create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/theme/stylesheet.css create mode 100755 src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/viewExpired.xhtml diff --git a/src/test/resources/test-applications/plantsbywebsphere/.gitignore b/src/test/resources/test-applications/plantsbywebsphere/.gitignore new file mode 100644 index 00000000..33f0b551 --- /dev/null +++ b/src/test/resources/test-applications/plantsbywebsphere/.gitignore @@ -0,0 +1,49 @@ +# Compiled source # +################### +*.com +*.class +*.dll +*.exe +*.o +*.so +.metadata +.recommenders +RemoteSystemsTempFiles + +# Packages # +############ +# it's better to unpack these files and commit the raw source +# git has its own built in compression methods +*.7z +*.dmg +*.gz +*.iso +*.rar +*.tar +*.zip +*.war + +# Logs and databases # +###################### +*.log +*.sql +*.sqlite + +# OS generated files # +###################### +.DS_Store +.DS_Store? +._* +.Spotlight-V100 +.Trashes +ehthumbs.db +Thumbs.db + +/.apt_generated/ +/target/ +.settings/ +/.gradle/ +/build/ +bin/ +.classpath +.project diff --git a/src/test/resources/test-applications/plantsbywebsphere/LICENSE b/src/test/resources/test-applications/plantsbywebsphere/LICENSE new file mode 100644 index 00000000..8dada3ed --- /dev/null +++ b/src/test/resources/test-applications/plantsbywebsphere/LICENSE @@ -0,0 +1,201 @@ + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "{}" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright {yyyy} {name of copyright owner} + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/src/test/resources/test-applications/plantsbywebsphere/README.md b/src/test/resources/test-applications/plantsbywebsphere/README.md new file mode 100644 index 00000000..b8d9fde0 --- /dev/null +++ b/src/test/resources/test-applications/plantsbywebsphere/README.md @@ -0,0 +1,40 @@ +# sample.plantsbywebsphere +Updated Plants By WebSphere showcase sample to run on WebSphere Liberty. + +This Repository is for testing the PlantsByWebSphere application +in an open source development environment. + +## How to run: + +1. Clone the github repo +2. Start the Liberty server and open the application in a web browser by running: +``` +./gradlew start open +``` + +### Collaborators: +- Dalia A. Abo Sheasha +- Ryan Gallus +- Samuel Ivanecky +- Alex Mortimer + +### Overview +This repository contains the PlantsByWebSphere Java EE sample application. There are two versions of the sample application. The main branch contains the original version of PlantsByWebSphere, while the rest branch contains an updated version which is still under development. + +### Original +The original version of PlantsByWebSphere is a simple Java EE application which uses CDI managed beans, Java Server Faces (JSF), and Java Server Pages (JSP). The sample runs on both TWAS and Liberty. + +### Updated +The updated version of PlantsByWebSphere replaces components of the original with a more modern web application design. JSF and JSP have been replaced by JAX-RS with the application redesigned as a RESTful Web Service. The client is a simple bootstrap framework, and all client JavaScript can be found in application.js. The server's additional REST code can be found in ApplicationResource.java. + +Additionally, this new version supports the use of the javaMail-1.5 feature which requires the configuration of a mailSession object in the server.xml. Below is an example mailSession configuration. Make sure to modify the the mail account (Gmail, Yahoo, etc.) settings and allow access of less secure applications in order for it to connect with PlantsByWebSphere. + +```xml + + + + + + + +``` diff --git a/src/test/resources/test-applications/plantsbywebsphere/build.gradle b/src/test/resources/test-applications/plantsbywebsphere/build.gradle new file mode 100644 index 00000000..4e731ea8 --- /dev/null +++ b/src/test/resources/test-applications/plantsbywebsphere/build.gradle @@ -0,0 +1,91 @@ +apply plugin: 'war' +apply plugin: 'liberty' + +group = 'net.wasdev.sample' +version = '1.0-SNAPSHOT' +description = "PlantsByWebSphere" + +sourceCompatibility = 1.7 +targetCompatibility = 1.7 +tasks.withType(JavaCompile) { + options.encoding = 'UTF-8' +} + +buildscript { + repositories { + mavenCentral() + } + dependencies { + classpath 'net.wasdev.wlp.gradle.plugins:liberty-gradle-plugin:2.6.5' + } +} + +repositories { + mavenCentral() +} + +configurations { + serverLibs +} + +dependencies { + providedCompile 'javax:javaee-api:7.0' + serverLibs 'org.apache.derby:derby:10.11.1.1' + libertyRuntime 'com.ibm.websphere.appserver.runtime:wlp-javaee7:19.0.0.8' +} + +task copyServerLibs(type: Copy) { + shouldRunAfter 'libertyCreate' + from configurations.serverLibs + into "${buildDir}/wlp/usr/servers/${rootProject.name}Server/lib" +} + +war.archiveName "${rootProject.name}.war" +test.dependsOn 'war' + +test { + defaultCharacterEncoding = "UTF-8" + useJUnitPlatform() + testLogging { + displayGranularity 1 + showStandardStreams = true + showStackTraces = true + exceptionFormat = 'full' + events 'PASSED', 'FAILED', 'SKIPPED' + } +} + +ext { + appUrl = "http://localhost:9080/${rootProject.name}/" +} + +liberty { + server { + name = rootProject.name + 'Server' + dropins = [war] + looseApplication = false + configDirectory = file('src/main/liberty/config') + } +} + +task openBrowser { + description = "Open browser to ${appUrl}" + doLast { + java.awt.Desktop.desktop.browse "${appUrl}".toURI() + } +} + +clean.dependsOn 'libertyStop' +libertyPackage.dependsOn 'libertyStop', 'copyServerLibs' +libertyStart.dependsOn 'libertyStop', 'copyServerLibs' +libertyRun.dependsOn 'libertyStop' +libertyStart.doLast { + println "Application available at: ${appUrl}" +} + +libertyStart.dependsOn 'libertyStop' +libertyRun.dependsOn 'libertyStop' + +task start { dependsOn 'libertyStart' } +task stop { dependsOn 'libertyStop' } + diff --git a/src/test/resources/test-applications/plantsbywebsphere/gradle/wrapper/gradle-wrapper.properties b/src/test/resources/test-applications/plantsbywebsphere/gradle/wrapper/gradle-wrapper.properties new file mode 100644 index 00000000..663c4485 --- /dev/null +++ b/src/test/resources/test-applications/plantsbywebsphere/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,5 @@ +distributionBase=GRADLE_USER_HOME +distributionPath=wrapper/dists +zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-5.2.1-bin.zip diff --git a/src/test/resources/test-applications/plantsbywebsphere/gradlew b/src/test/resources/test-applications/plantsbywebsphere/gradlew new file mode 100755 index 00000000..cccdd3d5 --- /dev/null +++ b/src/test/resources/test-applications/plantsbywebsphere/gradlew @@ -0,0 +1,172 @@ +#!/usr/bin/env sh + +############################################################################## +## +## Gradle start up script for UN*X +## +############################################################################## + +# Attempt to set APP_HOME +# Resolve links: $0 may be a link +PRG="$0" +# Need this for relative symlinks. +while [ -h "$PRG" ] ; do + ls=`ls -ld "$PRG"` + link=`expr "$ls" : '.*-> \(.*\)$'` + if expr "$link" : '/.*' > /dev/null; then + PRG="$link" + else + PRG=`dirname "$PRG"`"/$link" + fi +done +SAVED="`pwd`" +cd "`dirname \"$PRG\"`/" >/dev/null +APP_HOME="`pwd -P`" +cd "$SAVED" >/dev/null + +APP_NAME="Gradle" +APP_BASE_NAME=`basename "$0"` + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS="" + +# Use the maximum available, or set MAX_FD != -1 to use that value. +MAX_FD="maximum" + +warn () { + echo "$*" +} + +die () { + echo + echo "$*" + echo + exit 1 +} + +# OS specific support (must be 'true' or 'false'). +cygwin=false +msys=false +darwin=false +nonstop=false +case "`uname`" in + CYGWIN* ) + cygwin=true + ;; + Darwin* ) + darwin=true + ;; + MINGW* ) + msys=true + ;; + NONSTOP* ) + nonstop=true + ;; +esac + +CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar + +# Determine the Java command to use to start the JVM. +if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD="$JAVA_HOME/jre/sh/java" + else + JAVACMD="$JAVA_HOME/bin/java" + fi + if [ ! -x "$JAVACMD" ] ; then + die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +else + JAVACMD="java" + which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." +fi + +# Increase the maximum file descriptors if we can. +if [ "$cygwin" = "false" -a "$darwin" = "false" -a "$nonstop" = "false" ] ; then + MAX_FD_LIMIT=`ulimit -H -n` + if [ $? -eq 0 ] ; then + if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then + MAX_FD="$MAX_FD_LIMIT" + fi + ulimit -n $MAX_FD + if [ $? -ne 0 ] ; then + warn "Could not set maximum file descriptor limit: $MAX_FD" + fi + else + warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT" + fi +fi + +# For Darwin, add options to specify how the application appears in the dock +if $darwin; then + GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\"" +fi + +# For Cygwin, switch paths to Windows format before running java +if $cygwin ; then + APP_HOME=`cygpath --path --mixed "$APP_HOME"` + CLASSPATH=`cygpath --path --mixed "$CLASSPATH"` + JAVACMD=`cygpath --unix "$JAVACMD"` + + # We build the pattern for arguments to be converted via cygpath + ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null` + SEP="" + for dir in $ROOTDIRSRAW ; do + ROOTDIRS="$ROOTDIRS$SEP$dir" + SEP="|" + done + OURCYGPATTERN="(^($ROOTDIRS))" + # Add a user-defined pattern to the cygpath arguments + if [ "$GRADLE_CYGPATTERN" != "" ] ; then + OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)" + fi + # Now convert the arguments - kludge to limit ourselves to /bin/sh + i=0 + for arg in "$@" ; do + CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -` + CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option + + if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition + eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"` + else + eval `echo args$i`="\"$arg\"" + fi + i=$((i+1)) + done + case $i in + (0) set -- ;; + (1) set -- "$args0" ;; + (2) set -- "$args0" "$args1" ;; + (3) set -- "$args0" "$args1" "$args2" ;; + (4) set -- "$args0" "$args1" "$args2" "$args3" ;; + (5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;; + (6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;; + (7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;; + (8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;; + (9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;; + esac +fi + +# Escape application args +save () { + for i do printf %s\\n "$i" | sed "s/'/'\\\\''/g;1s/^/'/;\$s/\$/' \\\\/" ; done + echo " " +} +APP_ARGS=$(save "$@") + +# Collect all arguments for the java command, following the shell quoting and substitution rules +eval set -- $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS "\"-Dorg.gradle.appname=$APP_BASE_NAME\"" -classpath "\"$CLASSPATH\"" org.gradle.wrapper.GradleWrapperMain "$APP_ARGS" + +# by default we should be in the correct project dir, but when run from Finder on Mac, the cwd is wrong +if [ "$(uname)" = "Darwin" ] && [ "$HOME" = "$PWD" ]; then + cd "$(dirname "$0")" +fi + +exec "$JAVACMD" "$@" diff --git a/src/test/resources/test-applications/plantsbywebsphere/gradlew.bat b/src/test/resources/test-applications/plantsbywebsphere/gradlew.bat new file mode 100755 index 00000000..f9553162 --- /dev/null +++ b/src/test/resources/test-applications/plantsbywebsphere/gradlew.bat @@ -0,0 +1,84 @@ +@if "%DEBUG%" == "" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +set DIRNAME=%~dp0 +if "%DIRNAME%" == "" set DIRNAME=. +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS= + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if "%ERRORLEVEL%" == "0" goto init + +echo. +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto init + +echo. +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:init +@rem Get command-line arguments, handling Windows variants + +if not "%OS%" == "Windows_NT" goto win9xME_args + +:win9xME_args +@rem Slurp the command line arguments. +set CMD_LINE_ARGS= +set _SKIP=2 + +:win9xME_args_slurp +if "x%~1" == "x" goto execute + +set CMD_LINE_ARGS=%* + +:execute +@rem Setup the command line + +set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS% + +:end +@rem End local scope for the variables with windows NT shell +if "%ERRORLEVEL%"=="0" goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1 +exit /b 1 + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega diff --git a/src/test/resources/test-applications/plantsbywebsphere/settings.gradle b/src/test/resources/test-applications/plantsbywebsphere/settings.gradle new file mode 100644 index 00000000..46652e4c --- /dev/null +++ b/src/test/resources/test-applications/plantsbywebsphere/settings.gradle @@ -0,0 +1 @@ +rootProject.name = 'PlantsByWebSphere' diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/bean/BackOrderMgr.java b/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/bean/BackOrderMgr.java new file mode 100755 index 00000000..e44781c5 --- /dev/null +++ b/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/bean/BackOrderMgr.java @@ -0,0 +1,238 @@ +// +// COPYRIGHT LICENSE: This information contains sample code provided in source code form. You may copy, +// modify, and distribute these sample programs in any form without payment to IBM for the purposes of +// developing, using, marketing or distributing application programs conforming to the application +// programming interface for the operating platform for which the sample code is written. +// Notwithstanding anything to the contrary, IBM PROVIDES THE SAMPLE SOURCE CODE ON AN "AS IS" BASIS +// AND IBM DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, ANY IMPLIED +// WARRANTIES OR CONDITIONS OF MERCHANTABILITY, SATISFACTORY QUALITY, FITNESS FOR A PARTICULAR PURPOSE, +// TITLE, AND ANY WARRANTY OR CONDITION OF NON-INFRINGEMENT. IBM SHALL NOT BE LIABLE FOR ANY DIRECT, +// INDIRECT, INCIDENTAL, SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR OPERATION OF THE +// SAMPLE SOURCE CODE. IBM HAS NO OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS +// OR MODIFICATIONS TO THE SAMPLE SOURCE CODE. +// +// (C) COPYRIGHT International Business Machines Corp., 2003,2011 +// All Rights Reserved * Licensed Materials - Property of IBM +// +package com.ibm.websphere.samples.pbw.bean; + +import java.io.Serializable; +import java.util.Collection; + +import javax.annotation.security.RolesAllowed; +import javax.enterprise.context.Dependent; +import javax.persistence.EntityManager; +import javax.persistence.NoResultException; +import javax.persistence.PersistenceContext; +import javax.persistence.Query; + +import com.ibm.websphere.samples.pbw.jpa.BackOrder; +import com.ibm.websphere.samples.pbw.jpa.Inventory; +import com.ibm.websphere.samples.pbw.utils.Util; + +/** + * The BackOrderMgr provides a transactional and secured facade to access back order information. + * This bean no longer requires an interface as there is one and only one implementation. + */ +@Dependent +@RolesAllowed("SampAdmin") +public class BackOrderMgr implements Serializable { + @PersistenceContext(unitName = "PBW") + private EntityManager em; + + /** + * Method createBackOrder. + * + * @param inventoryID + * @param amountToOrder + * @param maximumItems + */ + public void createBackOrder(String inventoryID, int amountToOrder, int maximumItems) { + try { + Util.debug("BackOrderMgr.createBackOrder() - Entered"); + BackOrder backOrder = null; + try { + // See if there is already an existing backorder and increase + // the order quantity + // but only if it has not been sent to the supplier. + Query q = em.createNamedQuery("findByInventoryID"); + q.setParameter("id", inventoryID); + backOrder = (BackOrder) q.getSingleResult(); + if (!(backOrder.getStatus().equals(Util.STATUS_ORDERSTOCK))) { + Util.debug("BackOrderMgr.createBackOrder() - Backorders found but have already been ordered from the supplier"); + // throw new FinderException(); + } + // Increase the BackOrder quantity for an existing Back Order. + backOrder.setQuantity(backOrder.getQuantity() + amountToOrder); + } catch (NoResultException e) { + Util.debug("BackOrderMgr.createBackOrder() - BackOrder doesn't exist." + e); + Util.debug("BackOrderMgr.createBackOrder() - Creating BackOrder for InventoryID: " + inventoryID); + // Order enough stock from the supplier to reach the maximum + // threshold and to + // satisfy the back order. + amountToOrder = maximumItems + amountToOrder; + Inventory inv = em.find(Inventory.class, inventoryID); + BackOrder b = new BackOrder(inv, amountToOrder); + em.persist(b); + } + } catch (Exception e) { + Util.debug("BackOrderMgr.createBackOrder() - Exception: " + e); + } + } + + /** + * Method findBackOrderItems. + * + * @return Collection + */ + @SuppressWarnings("unchecked") + public Collection findBackOrders() { + Query q = em.createNamedQuery("findAllBackOrders"); + return q.getResultList(); + } + + /** + * Method deleteBackOrder. + * + * @param backOrderID + */ + public void deleteBackOrder(String backOrderID) { + Util.debug("BackOrderMgr.deleteBackOrder() - Entered"); + // BackOrderLocal backOrder = + // getBackOrderLocalHome().findByPrimaryKeyUpdate(backOrderID); + BackOrder backOrder = em.find(BackOrder.class, backOrderID); + em.remove(backOrder); + } + + /** + * Method receiveConfirmation. + * + * @param backOrderID + * / public int receiveConfirmation(String backOrderID) { int rc = 0; BackOrder + * backOrder; Util.debug( + * "BackOrderMgr.receiveConfirmation() - Finding Back Order for backOrderID=" + + * backOrderID); backOrder = em.find(BackOrder.class, backOrderID); + * backOrder.setStatus(Util.STATUS_RECEIVEDSTOCK); Util.debug( + * "BackOrderMgr.receiveConfirmation() - Updating status(" + + * Util.STATUS_RECEIVEDSTOCK + ") of backOrderID(" + backOrderID + ")"); return (rc); + * } + */ + + /** + * Method orderStock. + * + * @param backOrderID + * @param quantity + * / public void orderStock(String backOrderID, int quantity) { + * this.setBackOrderStatus(backOrderID, Util.STATUS_ORDEREDSTOCK); + * this.setBackOrderQuantity(backOrderID, quantity); + * this.setBackOrderOrderDate(backOrderID); } + */ + + /** + * Method updateStock. + * + * @param backOrderID + * @param quantity + */ + public void updateStock(String backOrderID, int quantity) { + this.setBackOrderStatus(backOrderID, Util.STATUS_ADDEDSTOCK); + } + + /** + * @param backOrderID + * / public void abortorderStock(String backOrderID) { Util.debug( + * "backOrderStockBean.abortorderStock() - Aborting orderStock transation for backorderID: " + * + backOrderID); // Reset the back order status since the order failed. + * this.setBackOrderStatus(backOrderID, Util.STATUS_ORDERSTOCK); } + */ + + /** + * Method getBackOrderID. + * + * @param backOrderID + * @return String / public String getBackOrderID(String backOrderID) { String retbackOrderID = + * ""; Util.debug( "BackOrderMgr.getBackOrderID() - Entered"); // BackOrderLocal + * backOrder = getBackOrderLocalHome().findByPrimaryKey(new BackOrderKey(backOrderID)); + * BackOrder backOrder = em.find(BackOrder.class, backOrderID); retbackOrderID = + * backOrder.getBackOrderID(); return retbackOrderID; } + */ + + /** + * Method getBackOrderInventoryID. + * + * @param backOrderID + * @return String + */ + public String getBackOrderInventoryID(String backOrderID) { + String retinventoryID = ""; + + Util.debug("BackOrderMgr.getBackOrderID() - Entered"); + // BackOrderLocal backOrder = + // getBackOrderLocalHome().findByPrimaryKey(new + // BackOrderKey(backOrderID)); + BackOrder backOrder = em.find(BackOrder.class, backOrderID); + retinventoryID = backOrder.getInventory().getInventoryId(); + + return retinventoryID; + } + + /** + * Method getBackOrderQuantity. + * + * @param backOrderID + * @return int + */ + public int getBackOrderQuantity(String backOrderID) { + int backOrderQuantity = -1; + Util.debug("BackOrderMgr.getBackOrderQuantity() - Entered"); + // BackOrderLocal backOrder = + // getBackOrderLocalHome().findByPrimaryKey(new + // BackOrderKey(backOrderID)); + BackOrder backOrder = em.find(BackOrder.class, backOrderID); + backOrderQuantity = backOrder.getQuantity(); + return backOrderQuantity; + } + + /** + * Method setBackOrderQuantity. + * + * @param backOrderID + * @param quantity + */ + public void setBackOrderQuantity(String backOrderID, int quantity) { + Util.debug("BackOrderMgr.setBackOrderQuantity() - Entered"); + // BackOrderLocal backOrder = + // getBackOrderLocalHome().findByPrimaryKeyUpdate(backOrderID); + BackOrder backOrder = em.find(BackOrder.class, backOrderID); + backOrder.setQuantity(quantity); + } + + /** + * Method setBackOrderStatus. + * + * @param backOrderID + * @param Status + */ + public void setBackOrderStatus(String backOrderID, String Status) { + Util.debug("BackOrderMgr.setBackOrderStatus() - Entered"); + // BackOrderLocal backOrder = + // getBackOrderLocalHome().findByPrimaryKeyUpdate(backOrderID); + BackOrder backOrder = em.find(BackOrder.class, backOrderID); + backOrder.setStatus(Status); + } + + /** + * Method setBackOrderOrderDate. + * + * @param backOrderID + */ + public void setBackOrderOrderDate(String backOrderID) { + Util.debug("BackOrderMgr.setBackOrderQuantity() - Entered"); + // BackOrderLocal backOrder = + // getBackOrderLocalHome().findByPrimaryKeyUpdate(backOrderID); + BackOrder backOrder = em.find(BackOrder.class, backOrderID); + backOrder.setOrderDate(System.currentTimeMillis()); + } + +} diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/bean/CatalogMgr.java b/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/bean/CatalogMgr.java new file mode 100755 index 00000000..94da49ac --- /dev/null +++ b/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/bean/CatalogMgr.java @@ -0,0 +1,205 @@ +// +// COPYRIGHT LICENSE: This information contains sample code provided in source code form. You may copy, +// modify, and distribute these sample programs in any form without payment to IBM for the purposes of +// developing, using, marketing or distributing application programs conforming to the application +// programming interface for the operating platform for which the sample code is written. +// Notwithstanding anything to the contrary, IBM PROVIDES THE SAMPLE SOURCE CODE ON AN "AS IS" BASIS +// AND IBM DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, ANY IMPLIED +// WARRANTIES OR CONDITIONS OF MERCHANTABILITY, SATISFACTORY QUALITY, FITNESS FOR A PARTICULAR PURPOSE, +// TITLE, AND ANY WARRANTY OR CONDITION OF NON-INFRINGEMENT. IBM SHALL NOT BE LIABLE FOR ANY DIRECT, +// INDIRECT, INCIDENTAL, SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR OPERATION OF THE +// SAMPLE SOURCE CODE. IBM HAS NO OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS +// OR MODIFICATIONS TO THE SAMPLE SOURCE CODE. +// +// (C) COPYRIGHT International Business Machines Corp., 2001,2011 +// All Rights Reserved * Licensed Materials - Property of IBM +// +package com.ibm.websphere.samples.pbw.bean; + +import java.io.Serializable; +import java.util.Vector; + +import javax.enterprise.context.Dependent; +import javax.persistence.EntityManager; +import javax.persistence.LockModeType; +import javax.persistence.PersistenceContext; +import javax.persistence.Query; + +import com.ibm.websphere.samples.pbw.jpa.Inventory; +import com.ibm.websphere.samples.pbw.utils.Util; + +/** + * The CatalogMgr provides transactional access to the catalog of items the store is willing to sell + * to customers. + * + * @see com.ibm.websphere.samples.pbw.jpa.Inventory + */ +@Dependent +@SuppressWarnings("unchecked") +public class CatalogMgr implements Serializable { + @PersistenceContext(unitName = "PBW") + EntityManager em; + + /** + * Get all inventory items. + * + * @return Vector of Inventorys. / public Vector getItems() { Vector items + * = new Vector(); int count = Util.getCategoryStrings().length; for (int i = + * 0; i < count; i++) { items.addAll(getItemsByCategory(i)); } return items; } + */ + + /** + * Get all inventory items for the given category. + * + * @param category + * of items desired. + * @return Vector of Inventory. + */ + public Vector getItemsByCategory(int category) { + Query q = em.createNamedQuery("getItemsByCategory"); + q.setParameter("category", category); + // The return type must be Vector because the PBW client ActiveX sample requires Vector + return new Vector(q.getResultList()); + } + + /** + * Get inventory items that contain a given String within their names. + * + * @param name + * String to search names for. + * @return A Vector of Inventorys that match. / public Vector getItemsLikeName(String + * name) { Query q = em.createNamedQuery("getItemsLikeName"); q.setParameter("name", '%' + * + name + '%'); //The return type must be Vector because the PBW client ActiveX sample + * requires Vector return new Vector(q.getResultList()); } + */ + + /** + * Get the StoreItem for the given ID. + * + * @param inventoryID + * - ID of the Inventory item desired. + * @return StoreItem / public StoreItem getItem(String inventoryID) { return new + * StoreItem(getItemInventory(inventoryID)); } + */ + + /** + * Get the Inventory item for the given ID. + * + * @param inventoryID + * - ID of the Inventory item desired. + * @return Inventory + */ + public Inventory getItemInventory(String inventoryID) { + Inventory si = null; + Util.debug("getItemInventory id=" + inventoryID); + si = em.find(Inventory.class, inventoryID); + return si; + } + + /** + * Add an inventory item. + * + * @param item + * The Inventory to add. + * @return True, if item added. + */ + public boolean addItem(Inventory item) { + boolean retval = true; + Util.debug("addItem " + item.getInventoryId()); + em.persist(item); + em.flush(); + return retval; + } + + /** + * Add an StoreItem item (same as Inventory item). + * + * @param item + * The StoreItem to add. + * @return True, if item added. / public boolean addItem(StoreItem item) { return addItem(new + * Inventory(item)); } + */ + + /** + * Delete an inventory item. + * + * @param inventoryID + * The ID of the inventory item to delete. + * @return True, if item deleted. / public boolean deleteItem(String inventoryID) { boolean + * retval = true; em.remove(em.find(Inventory.class, inventoryID)); return retval; } + */ + + /** + * Get the image for the inventory item. + * + * @param inventoryID + * The id of the inventory item wanted. + * @return Buffer containing the image. + */ + public byte[] getItemImageBytes(String inventoryID) { + byte[] retval = null; + Inventory inv = getInv(inventoryID); + if (inv != null) { + retval = inv.getImgbytes(); + } + + return retval; + } + + /** + * Set the image for the inventory item. + * + * @param inventoryID + * The id of the inventory item wanted. + * @param imgbytes + * Buffer containing the image. + */ + public void setItemImageBytes(String inventoryID, byte[] imgbytes) { + Inventory inv = getInvUpdate(inventoryID); + if (inv != null) { + inv.setImgbytes(imgbytes); + } + } + + /** + * Set the inventory item's quantity. + * + * @param inventoryID + * The inventory item's ID. + * @param quantity + * The inventory item's new quantity. + */ + public void setItemQuantity(String inventoryID, int quantity) { + Inventory inv = getInvUpdate(inventoryID); + if (inv != null) { + inv.setQuantity(quantity); + } + } + + /** + * Get a remote Inventory object. + * + * @param inventoryID + * The id of the inventory item wanted. + * @return Reference to the remote Inventory object. + */ + private Inventory getInv(String inventoryID) { + return em.find(Inventory.class, inventoryID); + } + + /** + * Get a remote Inventory object to Update. + * + * @param inventoryID + * The id of the inventory item wanted. + * @return Reference to the remote Inventory object. + */ + private Inventory getInvUpdate(String inventoryID) { + Inventory inv = null; + inv = em.find(Inventory.class, inventoryID); + em.lock(inv, LockModeType.OPTIMISTIC_FORCE_INCREMENT); + em.refresh(inv); + return inv; + } + +} diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/bean/CustomerMgr.java b/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/bean/CustomerMgr.java new file mode 100755 index 00000000..b5a53d04 --- /dev/null +++ b/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/bean/CustomerMgr.java @@ -0,0 +1,176 @@ +// +// COPYRIGHT LICENSE: This information contains sample code provided in source code form. You may copy, +// modify, and distribute these sample programs in any form without payment to IBM for the purposes of +// developing, using, marketing or distributing application programs conforming to the application +// programming interface for the operating platform for which the sample code is written. +// Notwithstanding anything to the contrary, IBM PROVIDES THE SAMPLE SOURCE CODE ON AN "AS IS" BASIS +// AND IBM DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, ANY IMPLIED +// WARRANTIES OR CONDITIONS OF MERCHANTABILITY, SATISFACTORY QUALITY, FITNESS FOR A PARTICULAR PURPOSE, +// TITLE, AND ANY WARRANTY OR CONDITION OF NON-INFRINGEMENT. IBM SHALL NOT BE LIABLE FOR ANY DIRECT, +// INDIRECT, INCIDENTAL, SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR OPERATION OF THE +// SAMPLE SOURCE CODE. IBM HAS NO OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS +// OR MODIFICATIONS TO THE SAMPLE SOURCE CODE. +// +// (C) COPYRIGHT International Business Machines Corp., 2001,2011 +// All Rights Reserved * Licensed Materials - Property of IBM +// +package com.ibm.websphere.samples.pbw.bean; + +import java.io.Serializable; + +import javax.enterprise.context.Dependent; +import javax.persistence.EntityManager; +import javax.persistence.LockModeType; +import javax.persistence.PersistenceContext; +import javax.transaction.Transactional; + +import com.ibm.websphere.samples.pbw.jpa.Customer; +import com.ibm.websphere.samples.pbw.utils.Util; + +/** + * The CustomerMgr provides a transactional facade for access to a user DB as well as simple + * authentication support for those users. + * + */ +@Transactional +@Dependent +public class CustomerMgr implements Serializable { + @PersistenceContext(unitName = "PBW") + EntityManager em; + + /** + * Create a new user. + * + * @param customerID + * The new customer ID. + * @param password + * The password for the customer ID. + * @param firstName + * First name. + * @param lastName + * Last name. + * @param addr1 + * Address line 1. + * @param addr2 + * Address line 2. + * @param addrCity + * City address information. + * @param addrState + * State address information. + * @param addrZip + * Zip code address information. + * @param phone + * User's phone number. + * @return Customer + */ + public Customer createCustomer(String customerID, + String password, + String firstName, + String lastName, + String addr1, + String addr2, + String addrCity, + String addrState, + String addrZip, + String phone) { + Customer c = new Customer(customerID, password, firstName, lastName, addr1, addr2, addrCity, addrState, addrZip, + phone); + em.persist(c); + em.flush(); + return c; + } + + /** + * Retrieve an existing user. + * + * @param customerID + * The customer ID. + * @return Customer + */ + public Customer getCustomer(String customerID) { + Customer c = em.find(Customer.class, customerID); + return c; + + } + + /** + * Update an existing user. + * + * @param customerID + * The customer ID. + * @param firstName + * First name. + * @param lastName + * Last name. + * @param addr1 + * Address line 1. + * @param addr2 + * Address line 2. + * @param addrCity + * City address information. + * @param addrState + * State address information. + * @param addrZip + * Zip code address information. + * @param phone + * User's phone number. + * @return Customer + */ + public Customer updateUser(String customerID, + String firstName, + String lastName, + String addr1, + String addr2, + String addrCity, + String addrState, + String addrZip, + String phone) { + Customer c = em.find(Customer.class, customerID); + em.lock(c, LockModeType.WRITE); + em.refresh(c); + + c.setFirstName(firstName); + c.setLastName(lastName); + c.setAddr1(addr1); + c.setAddr2(addr2); + c.setAddrCity(addrCity); + c.setAddrState(addrState); + c.setAddrZip(addrZip); + c.setPhone(phone); + + return c; + } + + /** + * Verify that the user exists and the password is value. + * + * @param customerID + * The customer ID + * @param password + * The password for the customer ID + * @return String with a results message. + */ + public String verifyUserAndPassword(String customerID, String password) { + // Try to get customer. + String results = null; + Customer customer = null; + + customer = em.find(Customer.class, customerID); + + // Does customer exist? + if (customer != null) { + if (!customer.verifyPassword(password)) // Is password correct? + { + results = "\nPassword does not match for : " + customerID; + Util.debug("Password given does not match for userid=" + customerID); + } + } else // Customer was not found. + { + results = "\nCould not find account for : " + customerID; + Util.debug("customer " + customerID + " NOT found"); + } + + return results; + } + +} diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/bean/EMailMessage.java b/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/bean/EMailMessage.java new file mode 100755 index 00000000..aed887a5 --- /dev/null +++ b/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/bean/EMailMessage.java @@ -0,0 +1,57 @@ +// +// COPYRIGHT LICENSE: This information contains sample code provided in source code form. You may copy, +// modify, and distribute these sample programs in any form without payment to IBM for the purposes of +// developing, using, marketing or distributing application programs conforming to the application +// programming interface for the operating platform for which the sample code is written. +// Notwithstanding anything to the contrary, IBM PROVIDES THE SAMPLE SOURCE CODE ON AN "AS IS" BASIS +// AND IBM DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, ANY IMPLIED +// WARRANTIES OR CONDITIONS OF MERCHANTABILITY, SATISFACTORY QUALITY, FITNESS FOR A PARTICULAR PURPOSE, +// TITLE, AND ANY WARRANTY OR CONDITION OF NON-INFRINGEMENT. IBM SHALL NOT BE LIABLE FOR ANY DIRECT, +// INDIRECT, INCIDENTAL, SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR OPERATION OF THE +// SAMPLE SOURCE CODE. IBM HAS NO OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS +// OR MODIFICATIONS TO THE SAMPLE SOURCE CODE. +// +// (C) COPYRIGHT International Business Machines Corp., 2001,2011 +// All Rights Reserved * Licensed Materials - Property of IBM +// +package com.ibm.websphere.samples.pbw.bean; + +/** + * This class encapsulates the info needed to send an email message. This object is passed to the + * Mailer EJB sendMail() method. + */ +public class EMailMessage implements java.io.Serializable { + /** + * + */ + private static final long serialVersionUID = 1L; + private String subject; + private String htmlContents; + private String emailReceiver; + + public EMailMessage(String subject, String htmlContents, String emailReceiver) { + this.subject = subject; + this.htmlContents = htmlContents; + this.emailReceiver = emailReceiver; + } + + // subject field of email message + public String getSubject() { + return subject; + } + + // Email address of recipient of email message + public String getEmailReceiver() { + return emailReceiver; + } + + // contents of email message + public String getHtmlContents() { + return htmlContents; + } + + public String toString() { + return " subject=" + subject + " " + emailReceiver + " " + htmlContents; + } + +} diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/bean/MailerAppException.java b/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/bean/MailerAppException.java new file mode 100755 index 00000000..d55cca99 --- /dev/null +++ b/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/bean/MailerAppException.java @@ -0,0 +1,37 @@ +// +// COPYRIGHT LICENSE: This information contains sample code provided in source code form. You may copy, +// modify, and distribute these sample programs in any form without payment to IBM for the purposes of +// developing, using, marketing or distributing application programs conforming to the application +// programming interface for the operating platform for which the sample code is written. +// Notwithstanding anything to the contrary, IBM PROVIDES THE SAMPLE SOURCE CODE ON AN "AS IS" BASIS +// AND IBM DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, ANY IMPLIED +// WARRANTIES OR CONDITIONS OF MERCHANTABILITY, SATISFACTORY QUALITY, FITNESS FOR A PARTICULAR PURPOSE, +// TITLE, AND ANY WARRANTY OR CONDITION OF NON-INFRINGEMENT. IBM SHALL NOT BE LIABLE FOR ANY DIRECT, +// INDIRECT, INCIDENTAL, SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR OPERATION OF THE +// SAMPLE SOURCE CODE. IBM HAS NO OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS +// OR MODIFICATIONS TO THE SAMPLE SOURCE CODE. +// +// (C) COPYRIGHT International Business Machines Corp., 2001,2011 +// All Rights Reserved * Licensed Materials - Property of IBM +// +package com.ibm.websphere.samples.pbw.bean; + +/** + * MailerAppException extends the standard Exception. This is thrown by the mailer component when + * there is some failure sending the mail. + */ +public class MailerAppException extends Exception { + + /** + * + */ + private static final long serialVersionUID = 1L; + + public MailerAppException() { + } + + public MailerAppException(String str) { + super(str); + } + +} diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/bean/MailerBean.java b/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/bean/MailerBean.java new file mode 100755 index 00000000..b4e0d6e3 --- /dev/null +++ b/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/bean/MailerBean.java @@ -0,0 +1,137 @@ +// +// COPYRIGHT LICENSE: This information contains sample code provided in source code form. You may copy, +// modify, and distribute these sample programs in any form without payment to IBM for the purposes of +// developing, using, marketing or distributing application programs conforming to the application +// programming interface for the operating platform for which the sample code is written. +// Notwithstanding anything to the contrary, IBM PROVIDES THE SAMPLE SOURCE CODE ON AN "AS IS" BASIS +// AND IBM DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, ANY IMPLIED +// WARRANTIES OR CONDITIONS OF MERCHANTABILITY, SATISFACTORY QUALITY, FITNESS FOR A PARTICULAR PURPOSE, +// TITLE, AND ANY WARRANTY OR CONDITION OF NON-INFRINGEMENT. IBM SHALL NOT BE LIABLE FOR ANY DIRECT, +// INDIRECT, INCIDENTAL, SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR OPERATION OF THE +// SAMPLE SOURCE CODE. IBM HAS NO OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS +// OR MODIFICATIONS TO THE SAMPLE SOURCE CODE. +// +// (C) COPYRIGHT International Business Machines Corp., 2001,2011 +// All Rights Reserved * Licensed Materials - Property of IBM +// +package com.ibm.websphere.samples.pbw.bean; + +import java.io.Serializable; +import java.util.Date; + +import javax.annotation.Resource; +import javax.enterprise.context.Dependent; +import javax.inject.Named; +import javax.mail.Message; +import javax.mail.Multipart; +import javax.mail.Session; +import javax.mail.Transport; +import javax.mail.internet.InternetAddress; +import javax.mail.internet.MimeBodyPart; +import javax.mail.internet.MimeMessage; +import javax.mail.internet.MimeMultipart; +import javax.persistence.EntityManager; +import javax.persistence.PersistenceContext; + +import com.ibm.websphere.samples.pbw.jpa.Customer; +import com.ibm.websphere.samples.pbw.jpa.Order; +import com.ibm.websphere.samples.pbw.utils.Util; + +/** + * MailerBean provides a transactional facade for access to Order information and notification of + * the buyer of order state. + * + */ + +@Named(value = "mailerbean") +@Dependent + +public class MailerBean implements Serializable { + private static final long serialVersionUID = 1L; + // public static final String MAIL_SESSION = "java:comp/env/mail/PlantsByWebSphere"; + @Resource(name = "mail/PlantsByWebSphere") + Session mailSession; + + @PersistenceContext(unitName = "PBW") + + EntityManager em; + + /** + * Create the email message. + * + * @param orderKey + * The order number. + * @return The email message. + */ + private String createMessage(String orderKey) { + Util.debug("creating email message for order:" + orderKey); + StringBuffer msg = new StringBuffer(); + Order order = em.find(Order.class, orderKey); + msg.append("Thank you for your order " + orderKey + ".\n"); + msg.append("Your Plants By WebSphere order will be shipped to:\n"); + msg.append(" " + order.getShipName() + "\n"); + msg.append(" " + order.getShipAddr1() + " " + order.getShipAddr2() + "\n"); + msg.append(" " + order.getShipCity() + ", " + order.getShipState() + " " + order.getShipZip() + "\n\n"); + msg.append("Please save it for your records.\n"); + return msg.toString(); + } + + /** + * Create the Subject line. + * + * @param orderKey + * The order number. + * @return The Order number string. + */ + private String createSubjectLine(String orderKey) { + StringBuffer msg = new StringBuffer(); + msg.append("Your order number " + orderKey); + + return msg.toString(); + } + + /** + * Create a mail message and send it. + * + * @param customerInfo + * Customer information. + * @param orderKey + * @throws MailerAppException + */ + public void createAndSendMail(Customer customerInfo, String orderKey) throws MailerAppException { + try { + EMailMessage eMessage = new EMailMessage(createSubjectLine(orderKey), createMessage(orderKey), + customerInfo.getCustomerID()); + + Util.debug("Sending message" + "\nTo: " + eMessage.getEmailReceiver() + "\nSubject: " + + eMessage.getSubject() + "\nContents: " + eMessage.getHtmlContents()); + + Util.debug("Sending message" + "\nTo: " + eMessage.getEmailReceiver() + "\nSubject: " + + eMessage.getSubject() + "\nContents: " + eMessage.getHtmlContents()); + + MimeMessage msg = new MimeMessage(mailSession); + msg.setFrom(); + + msg.setRecipients(Message.RecipientType.TO, InternetAddress.parse(eMessage.getEmailReceiver(), false)); + + msg.setSubject(eMessage.getSubject()); + MimeBodyPart mbp = new MimeBodyPart(); + mbp.setText(eMessage.getHtmlContents(), "us-ascii"); + msg.setHeader("X-Mailer", "JavaMailer"); + Multipart mp = new MimeMultipart(); + mp.addBodyPart(mbp); + msg.setContent(mp); + msg.setSentDate(new Date()); + + Transport.send(msg); + Util.debug("Mail sent successfully."); + + } catch (Exception e) { + + Util.debug("Error sending mail. Have mail resources been configured correctly?"); + Util.debug("createAndSendMail exception : " + e); + e.printStackTrace(); + throw new MailerAppException("Failure while sending mail"); + } + } +} diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/bean/NoSupplierException.java b/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/bean/NoSupplierException.java new file mode 100755 index 00000000..3b75308d --- /dev/null +++ b/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/bean/NoSupplierException.java @@ -0,0 +1,35 @@ +// +// COPYRIGHT LICENSE: This information contains sample code provided in source code form. You may copy, +// modify, and distribute these sample programs in any form without payment to IBM for the purposes of +// developing, using, marketing or distributing application programs conforming to the application +// programming interface for the operating platform for which the sample code is written. +// Notwithstanding anything to the contrary, IBM PROVIDES THE SAMPLE SOURCE CODE ON AN "AS IS" BASIS +// AND IBM DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, ANY IMPLIED +// WARRANTIES OR CONDITIONS OF MERCHANTABILITY, SATISFACTORY QUALITY, FITNESS FOR A PARTICULAR PURPOSE, +// TITLE, AND ANY WARRANTY OR CONDITION OF NON-INFRINGEMENT. IBM SHALL NOT BE LIABLE FOR ANY DIRECT, +// INDIRECT, INCIDENTAL, SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR OPERATION OF THE +// SAMPLE SOURCE CODE. IBM HAS NO OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS +// OR MODIFICATIONS TO THE SAMPLE SOURCE CODE. +// +// (C) COPYRIGHT International Business Machines Corp., 2003,2011 +// All Rights Reserved * Licensed Materials - Property of IBM +// + +package com.ibm.websphere.samples.pbw.bean; + +public class NoSupplierException extends Exception { + /** + * + */ + private static final long serialVersionUID = 1L; + + /** + * Method NoSupplierException + * + * @param message + */ + public NoSupplierException(String message) { + super(message); + return; + } +} diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/bean/PopulateDBBean.java b/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/bean/PopulateDBBean.java new file mode 100644 index 00000000..3d05ba66 --- /dev/null +++ b/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/bean/PopulateDBBean.java @@ -0,0 +1,23 @@ +package com.ibm.websphere.samples.pbw.bean; + +import javax.annotation.PostConstruct; +import javax.ejb.Singleton; +import javax.ejb.Startup; +import javax.inject.Inject; + +import com.ibm.websphere.samples.pbw.utils.Util; + +@Singleton +@Startup +public class PopulateDBBean { + + @Inject + ResetDBBean dbBean; + + @PostConstruct + public void initDB() { + Util.debug("Initializing database..."); + dbBean.populateDB(); + } + +} diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/bean/ResetDBBean.java b/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/bean/ResetDBBean.java new file mode 100755 index 00000000..41e4af03 --- /dev/null +++ b/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/bean/ResetDBBean.java @@ -0,0 +1,343 @@ +// +// COPYRIGHT LICENSE: This information contains sample code provided in source code form. You may copy, +// modify, and distribute these sample programs in any form without payment to IBM for the purposes of +// developing, using, marketing or distributing application programs conforming to the application +// programming interface for the operating platform for which the sample code is written. +// Notwithstanding anything to the contrary, IBM PROVIDES THE SAMPLE SOURCE CODE ON AN "AS IS" BASIS +// AND IBM DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, ANY IMPLIED +// WARRANTIES OR CONDITIONS OF MERCHANTABILITY, SATISFACTORY QUALITY, FITNESS FOR A PARTICULAR PURPOSE, +// TITLE, AND ANY WARRANTY OR CONDITION OF NON-INFRINGEMENT. IBM SHALL NOT BE LIABLE FOR ANY DIRECT, +// INDIRECT, INCIDENTAL, SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR OPERATION OF THE +// SAMPLE SOURCE CODE. IBM HAS NO OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS +// OR MODIFICATIONS TO THE SAMPLE SOURCE CODE. +// +// (C) COPYRIGHT International Business Machines Corp., 2004,2011 +// All Rights Reserved * Licensed Materials - Property of IBM +// +package com.ibm.websphere.samples.pbw.bean; + +import java.io.DataInputStream; +import java.io.File; +import java.io.FileInputStream; +import java.io.FileNotFoundException; +import java.io.IOException; +import java.io.Serializable; +import java.net.URL; +import java.util.Vector; + +import javax.annotation.Resource; +import javax.annotation.security.RolesAllowed; +import javax.enterprise.context.Dependent; +import javax.inject.Inject; +import javax.inject.Named; +import javax.persistence.EntityManager; +import javax.persistence.PersistenceContext; +import javax.persistence.PersistenceContextType; +import javax.persistence.Query; +import javax.persistence.SynchronizationType; +import javax.transaction.HeuristicMixedException; +import javax.transaction.HeuristicRollbackException; +import javax.transaction.NotSupportedException; +import javax.transaction.RollbackException; +import javax.transaction.SystemException; +import javax.transaction.Transactional; +import javax.transaction.UserTransaction; + +import com.ibm.websphere.samples.pbw.jpa.Inventory; +import com.ibm.websphere.samples.pbw.utils.Util; + +/** + * ResetDBBean provides a transactional and secure facade to reset all the database information for + * the PlantsByWebSphere application. + */ + +@Named(value = "resetbean") +@Dependent +@RolesAllowed("SampAdmin") +public class ResetDBBean implements Serializable { + + @Inject + private CatalogMgr catalog; + @Inject + private CustomerMgr customer; + @Inject + private ShoppingCartBean cart; + @Inject + private BackOrderMgr backOrderStock; + @Inject + private SuppliersBean suppliers; + + @PersistenceContext(unitName = "PBW") + EntityManager em; + + @Resource + UserTransaction tx; + + public void resetDB() { + deleteAll(); + populateDB(); + } + + /** + * @param itemID + * @param fileName + * @param catalog + * @throws FileNotFoundException + * @throws IOException + */ + public static void addImage(String itemID, + String fileName, + CatalogMgr catalog) throws FileNotFoundException, IOException { + URL url = Thread.currentThread().getContextClassLoader().getResource("resources/images/" + fileName); + Util.debug("URL: " + url); + fileName = url.getPath(); + Util.debug("Fully-qualified Filename: " + fileName); + File imgFile = new File(fileName); + // Open the input file as a stream of bytes + FileInputStream fis = new FileInputStream(imgFile); + DataInputStream dis = new DataInputStream(fis); + int dataSize = dis.available(); + byte[] data = new byte[dataSize]; + dis.readFully(data); + catalog.setItemImageBytes(itemID, data); + } + + public void populateDB() { + /** + * Populate INVENTORY table with text + */ + Util.debug("Populating INVENTORY table with text..."); + try { + String[] values = Util.getProperties("inventory"); + for (int index = 0; index < values.length; index++) { + Util.debug("Found INVENTORY property values: " + values[index]); + String[] fields = Util.readTokens(values[index], "|"); + String id = fields[0]; + String name = fields[1]; + String heading = fields[2]; + String descr = fields[3]; + String pkginfo = fields[4]; + String image = fields[5]; + float price = new Float(fields[6]).floatValue(); + float cost = new Float(fields[7]).floatValue(); + int quantity = new Integer(fields[8]).intValue(); + int category = new Integer(fields[9]).intValue(); + String notes = fields[10]; + boolean isPublic = new Boolean(fields[11]).booleanValue(); + Util.debug("Populating INVENTORY with following values: "); + Util.debug(fields[0]); + Util.debug(fields[1]); + Util.debug(fields[2]); + Util.debug(fields[3]); + Util.debug(fields[4]); + Util.debug(fields[5]); + Util.debug(fields[6]); + Util.debug(fields[7]); + Util.debug(fields[8]); + Util.debug(fields[9]); + Util.debug(fields[10]); + Util.debug(fields[11]); + Inventory storeItem = new Inventory(id, name, heading, descr, pkginfo, image, price, cost, quantity, + category, notes, isPublic); + catalog.addItem(storeItem); + addImage(id, image, catalog); + } + Util.debug("INVENTORY table populated with text..."); + } catch (Exception e) { + Util.debug("Unable to populate INVENTORY table with text data: " + e); + e.printStackTrace(); + } + /** + * Populate CUSTOMER table with text + */ + Util.debug("Populating CUSTOMER table with default values..."); + try { + String[] values = Util.getProperties("customer"); + Util.debug("Found CUSTOMER properties: " + values[0]); + for (int index = 0; index < values.length; index++) { + String[] fields = Util.readTokens(values[index], "|"); + String customerID = fields[0]; + String password = fields[1]; + String firstName = fields[2]; + String lastName = fields[3]; + String addr1 = fields[4]; + String addr2 = fields[5]; + String addrCity = fields[6]; + String addrState = fields[7]; + String addrZip = fields[8]; + String phone = fields[9]; + Util.debug("Populating CUSTOMER with following values: "); + Util.debug(fields[0]); + Util.debug(fields[1]); + Util.debug(fields[2]); + Util.debug(fields[3]); + Util.debug(fields[4]); + Util.debug(fields[5]); + Util.debug(fields[6]); + Util.debug(fields[7]); + Util.debug(fields[8]); + Util.debug(fields[9]); + customer.createCustomer(customerID, password, firstName, lastName, addr1, addr2, addrCity, addrState, addrZip, phone); + } + } catch (Exception e) { + Util.debug("Unable to populate CUSTOMER table with text data: " + e); + e.printStackTrace(); + } + /** + * Populate ORDER table with text + */ + Util.debug("Populating ORDER table with default values..."); + try { + String[] values = Util.getProperties("order"); + Util.debug("Found ORDER properties: " + values[0]); + if (values[0] != null && values.length > 0) { + for (int index = 0; index < values.length; index++) { + String[] fields = Util.readTokens(values[index], "|"); + if (fields != null && fields.length >= 21) { + String customerID = fields[0]; + String billName = fields[1]; + String billAddr1 = fields[2]; + String billAddr2 = fields[3]; + String billCity = fields[4]; + String billState = fields[5]; + String billZip = fields[6]; + String billPhone = fields[7]; + String shipName = fields[8]; + String shipAddr1 = fields[9]; + String shipAddr2 = fields[10]; + String shipCity = fields[11]; + String shipState = fields[12]; + String shipZip = fields[13]; + String shipPhone = fields[14]; + int shippingMethod = Integer.parseInt(fields[15]); + String creditCard = fields[16]; + String ccNum = fields[17]; + String ccExpireMonth = fields[18]; + String ccExpireYear = fields[19]; + String cardHolder = fields[20]; + Vector items = new Vector(); + Util.debug("Populating ORDER with following values: "); + Util.debug(fields[0]); + Util.debug(fields[1]); + Util.debug(fields[2]); + Util.debug(fields[3]); + Util.debug(fields[4]); + Util.debug(fields[5]); + Util.debug(fields[6]); + Util.debug(fields[7]); + Util.debug(fields[8]); + Util.debug(fields[9]); + Util.debug(fields[10]); + Util.debug(fields[11]); + Util.debug(fields[12]); + Util.debug(fields[13]); + Util.debug(fields[14]); + Util.debug(fields[15]); + Util.debug(fields[16]); + Util.debug(fields[17]); + Util.debug(fields[18]); + Util.debug(fields[19]); + Util.debug(fields[20]); + cart.createOrder(customerID, billName, billAddr1, billAddr2, billCity, billState, billZip, billPhone, shipName, shipAddr1, shipAddr2, shipCity, shipState, shipZip, shipPhone, creditCard, ccNum, ccExpireMonth, ccExpireYear, cardHolder, shippingMethod, items); + } else { + Util.debug("Property does not contain enough fields: " + values[index]); + Util.debug("Fields found were: " + fields); + } + } + } + // stmt.executeUpdate(" INSERT INTO ORDERITEM(INVENTORYID, NAME, PKGINFO, PRICE, COST, + // CATEGORY, QUANTITY, SELLDATE, ORDER_ORDERID) VALUES ('A0001', 'Bulb Digger', + // 'Assembled', 12.0, 5.0, 3, 900, '01054835419625', '1')"); + } catch (Exception e) { + Util.debug("Unable to populate ORDERITEM table with text data: " + e); + e.printStackTrace(); + e.printStackTrace(); + } + /** + * Populate BACKORDER table with text + */ + Util.debug("Populating BACKORDER table with default values..."); + try { + String[] values = Util.getProperties("backorder"); + Util.debug("Found BACKORDER properties: " + values[0]); + // Inserting backorders + for (int index = 0; index < values.length; index++) { + String[] fields = Util.readTokens(values[index], "|"); + String inventoryID = fields[0]; + int amountToOrder = new Integer(fields[1]).intValue(); + int maximumItems = new Integer(fields[2]).intValue(); + Util.debug("Populating BACKORDER with following values: "); + Util.debug(inventoryID); + Util.debug("amountToOrder -> " + amountToOrder); + Util.debug("maximumItems -> " + maximumItems); + backOrderStock.createBackOrder(inventoryID, amountToOrder, maximumItems); + } + } catch (Exception e) { + Util.debug("Unable to populate BACKORDER table with text data: " + e); + e.printStackTrace(); + } + /** + * Populate SUPPLIER table with text + */ + Util.debug("Populating SUPPLIER table with default values..."); + try { + String[] values = Util.getProperties("supplier"); + Util.debug("Found SUPPLIER properties: " + values[0]); + // Inserting Suppliers + for (int index = 0; index < values.length; index++) { + String[] fields = Util.readTokens(values[index], "|"); + String supplierID = fields[0]; + String name = fields[1]; + String address = fields[2]; + String city = fields[3]; + String state = fields[4]; + String zip = fields[5]; + String phone = fields[6]; + String url = fields[7]; + Util.debug("Populating SUPPLIER with following values: "); + Util.debug(fields[0]); + Util.debug(fields[1]); + Util.debug(fields[2]); + Util.debug(fields[3]); + Util.debug(fields[4]); + Util.debug(fields[5]); + Util.debug(fields[6]); + Util.debug(fields[7]); + suppliers.createSupplier(supplierID, name, address, city, state, zip, phone, url); + } + } catch (Exception e) { + Util.debug("Unable to populate SUPPLIER table with text data: " + e); + e.printStackTrace(); + } + } + + @Transactional + public void deleteAll() { + try { + Query q = em.createNamedQuery("removeAllOrders"); + q.executeUpdate(); + q = em.createNamedQuery("removeAllInventory"); + q.executeUpdate(); + // q=em.createNamedQuery("removeAllIdGenerator"); + // q.executeUpdate(); + q = em.createNamedQuery("removeAllCustomers"); + q.executeUpdate(); + q = em.createNamedQuery("removeAllOrderItem"); + q.executeUpdate(); + q = em.createNamedQuery("removeAllBackOrder"); + q.executeUpdate(); + q = em.createNamedQuery("removeAllSupplier"); + q.executeUpdate(); + em.flush(); + Util.debug("Deleted all data from database"); + } catch (Exception e) { + Util.debug("ResetDB(deleteAll) -- Error deleting data from the database: " + e); + e.printStackTrace(); + try { + tx.setRollbackOnly(); + } catch (IllegalStateException | SystemException ignore) { + } + } + } + +} \ No newline at end of file diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/bean/ShoppingCartBean.java b/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/bean/ShoppingCartBean.java new file mode 100755 index 00000000..581fa265 --- /dev/null +++ b/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/bean/ShoppingCartBean.java @@ -0,0 +1,347 @@ +// +// COPYRIGHT LICENSE: This information contains sample code provided in source code form. You may copy, +// modify, and distribute these sample programs in any form without payment to IBM for the purposes of +// developing, using, marketing or distributing application programs conforming to the application +// programming interface for the operating platform for which the sample code is written. +// Notwithstanding anything to the contrary, IBM PROVIDES THE SAMPLE SOURCE CODE ON AN "AS IS" BASIS +// AND IBM DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, ANY IMPLIED +// WARRANTIES OR CONDITIONS OF MERCHANTABILITY, SATISFACTORY QUALITY, FITNESS FOR A PARTICULAR PURPOSE, +// TITLE, AND ANY WARRANTY OR CONDITION OF NON-INFRINGEMENT. IBM SHALL NOT BE LIABLE FOR ANY DIRECT, +// INDIRECT, INCIDENTAL, SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR OPERATION OF THE +// SAMPLE SOURCE CODE. IBM HAS NO OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS +// OR MODIFICATIONS TO THE SAMPLE SOURCE CODE. +// +// (C) COPYRIGHT International Business Machines Corp., 2001,2011 +// All Rights Reserved * Licensed Materials - Property of IBM +// +package com.ibm.websphere.samples.pbw.bean; + +import java.io.Serializable; +import java.util.ArrayList; +import java.util.Collection; + +import javax.enterprise.context.SessionScoped; +import javax.persistence.EntityManager; +import javax.persistence.LockModeType; +import javax.persistence.PersistenceContext; +import javax.transaction.Transactional; + +import com.ibm.websphere.samples.pbw.jpa.BackOrder; +import com.ibm.websphere.samples.pbw.jpa.Customer; +import com.ibm.websphere.samples.pbw.jpa.Inventory; +import com.ibm.websphere.samples.pbw.jpa.Order; +import com.ibm.websphere.samples.pbw.jpa.OrderItem; +import com.ibm.websphere.samples.pbw.utils.Util; + +/** + * ShopingCartBean provides a transactional facade for order collection and processing. + * + */ + +@Transactional +@SessionScoped +public class ShoppingCartBean implements Serializable { + + @PersistenceContext(unitName = "PBW") + EntityManager em; + + private ArrayList items = new ArrayList(); + + /** + * Add an item to the cart. + * + * @param new_item + * Item to add to the cart. + */ + public void addItem(Inventory new_item) { + boolean added = false; + // If the same item is already in the cart, just increase the quantity. + for (Inventory old_item : items) { + if (old_item.getID().equals(new_item.getID())) { + old_item.setQuantity(old_item.getQuantity() + new_item.getQuantity()); + added = true; + break; + } + } + // Add this item to shopping cart, if it is a brand new item. + if (!added) + items.add(new_item); + } + + /** + * Remove an item from the cart. + * + * @param item + * Item to remove from cart. + */ + public void removeItem(Inventory item) { + for (Inventory i : items) { + if (item.equals(i)) { + items.remove(i); + break; + } + } + } + + /** + * Remove all items from the cart. + */ + public void removeAllItems() { + items = new ArrayList(); + } + + /** + * Remove zero quantity items. + */ + public void removeZeroQuantityItems() { + ArrayList newItems = new ArrayList(); + + for (Inventory i : items) { + if (i.getQuantity() > 0) { + newItems.add(i); + } + } + + items = newItems; + } + + /** + * Get the items in the shopping cart. + * + * @return A Collection of ShoppingCartItems. + */ + public ArrayList getItems() { + return items; + } + + /** + * Set the items in the shopping cart. + * + * @param items + * A Vector of ShoppingCartItem's. + */ + public void setItems(Collection items) { + this.items = new ArrayList(items); + } + + /** + * Get the contents of the shopping cart. + * + * @return The contents of the shopping cart. / public ShoppingCartContents getCartContents() { + * ShoppingCartContents cartContents = new ShoppingCartContents(); // Fill it with data. + * for (int i = 0; i < items.size(); i++) { cartContents.addItem((ShoppingCartItem) + * items.get(i)); } return cartContents; } + */ + + /** + * Create a shopping cart. + * + * @param cartContents + * Contents to populate cart with. / public void setCartContents(ShoppingCartContents + * cartContents) { items = new ArrayList(); int qty; String + * inventoryID; ShoppingCartItem si; Inventory inv; for (int i = 0; i < + * cartContents.size(); i++) { inventoryID = cartContents.getInventoryID(i); qty = + * cartContents.getQuantity(inventoryID); inv = em.find(Inventory.class, + * inventoryID); // clone so we can use Qty as qty to purchase, not inventory in + * stock si = new ShoppingCartItem(inv); si.setQuantity(qty); addItem(si); } } + */ + + /** + * Get the cost of all items in the shopping cart. + * + * @return The total cost of all items in the shopping cart. + */ + public float getSubtotalCost() { + float f = 0.0F; + + for (Inventory item : items) { + f += item.getPrice() * (float) item.getQuantity(); + } + return f; + } + + /** + * Method checkInventory. Check the inventory level of a store item. Order additional inventory + * when necessary. + * + * @param si + * - Store item + */ + public void checkInventory(Inventory si) { + Util.debug("ShoppingCart.checkInventory() - checking Inventory quantity of item: " + si.getID()); + Inventory inv = getInventoryItem(si.getID()); + + /** + * Decrease the quantity of this inventory item. + * + * @param quantity + * The number to decrease the inventory by. + * @return The number of inventory items removed. + */ + int quantity = si.getQuantity(); + int minimumItems = inv.getMinThreshold(); + + int amountToOrder = 0; + Util.debug("ShoppingCartBean:checkInventory() - Decreasing inventory item " + inv.getInventoryId()); + int quantityNotFilled = 0; + if (inv.getQuantity() < 1) { + quantityNotFilled = quantity; + } else if (inv.getQuantity() < quantity) { + quantityNotFilled = quantity - inv.getQuantity(); + } + + // When quantity becomes < 0, this will be to determine the + // quantity of unfilled orders due to insufficient stock. + inv.setQuantity(inv.getQuantity() - quantity); + + // Check to see if more inventory needs to be ordered from the supplier + // based on a set minimum Threshold + if (inv.getQuantity() < minimumItems) { + // Calculate the amount of stock to order from the supplier + // to get the inventory up to the maximum. + amountToOrder = quantityNotFilled; + backOrder(inv, amountToOrder); + } + + } + + /** + * Create an order with contents of a shopping cart. + * + * @param customerID + * customer's ID + * @param billName + * billing name + * @param billAddr1 + * billing address line 1 + * @param billAddr2 + * billing address line 2 + * @param billCity + * billing address city + * @param billState + * billing address state + * @param billZip + * billing address zip code + * @param billPhone + * billing phone + * @param shipName + * shippng name + * @param shipAddr1 + * shippng address line 1 + * @param shipAddr2 + * shippng address line 2 + * @param shipCity + * shippng address city + * @param shipState + * shippng address state + * @param shipZip + * shippng address zip code + * @param shipPhone + * shippng phone + * @param creditCard + * credit card + * @param ccNum + * credit card number + * @param ccExpireMonth + * credit card expiration month + * @param ccExpireYear + * credit card expiration year + * @param cardHolder + * credit card holder name + * @param shippingMethod + * int of shipping method used + * @param items + * vector of StoreItems ordered + * @return OrderInfo + */ + public Order createOrder(String customerID, + String billName, + String billAddr1, + String billAddr2, + String billCity, + String billState, + String billZip, + String billPhone, + String shipName, + String shipAddr1, + String shipAddr2, + String shipCity, + String shipState, + String shipZip, + String shipPhone, + String creditCard, + String ccNum, + String ccExpireMonth, + String ccExpireYear, + String cardHolder, + int shippingMethod, + Collection items) { + Order order = null; + Util.debug("ShoppingCartBean.createOrder: Creating Order"); + Collection orderitems = new ArrayList(); + for (Inventory si : items) { + Inventory inv = em.find(Inventory.class, si.getID()); + OrderItem oi = new OrderItem(inv); + oi.setQuantity(si.getQuantity()); + orderitems.add(oi); + } + Customer c = em.find(Customer.class, customerID); + order = new Order(c, billName, billAddr1, billAddr2, billCity, billState, billZip, billPhone, shipName, + shipAddr1, shipAddr2, shipCity, shipState, shipZip, shipPhone, creditCard, ccNum, ccExpireMonth, + ccExpireYear, cardHolder, shippingMethod, orderitems); + em.persist(order); + em.flush(); + // store the order items + for (OrderItem o : orderitems) { + o.setOrder(order); + o.updatePK(); + em.persist(o); + } + em.flush(); + + return order; + } + + public int getSize() { + return getItems().size(); + } + + /* + * Get the inventory item. + * + * @param id of inventory item. + * + * @return an inventory bean. + */ + private Inventory getInventoryItem(String inventoryID) { + Inventory inv = null; + inv = em.find(Inventory.class, inventoryID); + return inv; + } + + /* + * Create a BackOrder of this inventory item. + * + * @param quantity The number of the inventory item to be backordered + */ + private void backOrder(Inventory inv, int amountToOrder) { + BackOrder b = em.find(BackOrder.class, inv.getInventoryId()); + if (b == null) { + // create a new backorder if none exists + BackOrder newBO = new BackOrder(inv, amountToOrder); + em.persist(newBO); + em.flush(); + inv.setBackOrder(newBO); + } else { + // update the backorder with the new quantity + int quantity = b.getQuantity(); + quantity += amountToOrder; + em.lock(b, LockModeType.WRITE); + em.refresh(b); + b.setQuantity(quantity); + em.flush(); + inv.setBackOrder(b); + } + } + +} diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/bean/ShoppingCartContent.java b/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/bean/ShoppingCartContent.java new file mode 100755 index 00000000..3b45d57c --- /dev/null +++ b/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/bean/ShoppingCartContent.java @@ -0,0 +1,97 @@ +// +// COPYRIGHT LICENSE: This information contains sample code provided in source code form. You may copy, +// modify, and distribute these sample programs in any form without payment to IBM for the purposes of +// developing, using, marketing or distributing application programs conforming to the application +// programming interface for the operating platform for which the sample code is written. +// Notwithstanding anything to the contrary, IBM PROVIDES THE SAMPLE SOURCE CODE ON AN "AS IS" BASIS +// AND IBM DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, ANY IMPLIED +// WARRANTIES OR CONDITIONS OF MERCHANTABILITY, SATISFACTORY QUALITY, FITNESS FOR A PARTICULAR PURPOSE, +// TITLE, AND ANY WARRANTY OR CONDITION OF NON-INFRINGEMENT. IBM SHALL NOT BE LIABLE FOR ANY DIRECT, +// INDIRECT, INCIDENTAL, SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR OPERATION OF THE +// SAMPLE SOURCE CODE. IBM HAS NO OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS +// OR MODIFICATIONS TO THE SAMPLE SOURCE CODE. +// +// (C) COPYRIGHT International Business Machines Corp., 2001,2011 +// All Rights Reserved * Licensed Materials - Property of IBM +// +package com.ibm.websphere.samples.pbw.bean; + +import java.util.Enumeration; +import java.util.Hashtable; + +import com.ibm.websphere.samples.pbw.jpa.Inventory; + +/** + * A class to hold a shopping cart's contents. + */ +public class ShoppingCartContent implements java.io.Serializable { + /** + * + */ + private static final long serialVersionUID = 1L; + private Hashtable table = null; + + public ShoppingCartContent() { + table = new Hashtable(); + } + + /** Add the item to the shopping cart. */ + public void addItem(Inventory si) { + table.put(si.getID(), new Integer(si.getQuantity())); + } + + /** Update the item in the shopping cart. */ + public void updateItem(Inventory si) { + table.put(si.getID(), new Integer(si.getQuantity())); + } + + /** Remove the item from the shopping cart. */ + public void removeItem(Inventory si) { + table.remove(si.getID()); + } + + /** + * Return the number of items in the cart. + * + * @return The number of items in the cart. + */ + public int size() { + return table.size(); + } + + /** + * Return the inventory ID at the index given. The first element is at index 0, the second at + * index 1, and so on. + * + * @return The inventory ID at the index, or NULL if not present. + */ + public String getInventoryID(int index) { + String retval = null; + String inventoryID; + int cnt = 0; + for (Enumeration myEnum = table.keys(); myEnum.hasMoreElements(); cnt++) { + inventoryID = (String) myEnum.nextElement(); + if (index == cnt) { + retval = inventoryID; + break; + } + } + return retval; + } + + /** + * Return the quantity for the inventory ID given. + * + * @return The quantity for the inventory ID given.. + * + */ + public int getQuantity(String inventoryID) { + Integer quantity = (Integer) table.get(inventoryID); + + if (quantity == null) + return 0; + else + return quantity.intValue(); + } + +} diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/bean/SuppliersBean.java b/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/bean/SuppliersBean.java new file mode 100755 index 00000000..6c4c5883 --- /dev/null +++ b/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/bean/SuppliersBean.java @@ -0,0 +1,144 @@ +// +// COPYRIGHT LICENSE: This information contains sample code provided in source code form. You may copy, +// modify, and distribute these sample programs in any form without payment to IBM for the purposes of +// developing, using, marketing or distributing application programs conforming to the application +// programming interface for the operating platform for which the sample code is written. +// Notwithstanding anything to the contrary, IBM PROVIDES THE SAMPLE SOURCE CODE ON AN "AS IS" BASIS +// AND IBM DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, ANY IMPLIED +// WARRANTIES OR CONDITIONS OF MERCHANTABILITY, SATISFACTORY QUALITY, FITNESS FOR A PARTICULAR PURPOSE, +// TITLE, AND ANY WARRANTY OR CONDITION OF NON-INFRINGEMENT. IBM SHALL NOT BE LIABLE FOR ANY DIRECT, +// INDIRECT, INCIDENTAL, SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR OPERATION OF THE +// SAMPLE SOURCE CODE. IBM HAS NO OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS +// OR MODIFICATIONS TO THE SAMPLE SOURCE CODE. +// +// (C) COPYRIGHT International Business Machines Corp., 2004,2011 +// All Rights Reserved * Licensed Materials - Property of IBM +// +package com.ibm.websphere.samples.pbw.bean; + +import java.io.Serializable; +import java.util.Collection; +import java.util.Iterator; + +import javax.enterprise.context.Dependent; +import javax.persistence.EntityManager; +import javax.persistence.PersistenceContext; +import javax.persistence.Query; + +import com.ibm.websphere.samples.pbw.jpa.Supplier; +import com.ibm.websphere.samples.pbw.utils.Util; + +/** + * Bean implementation class for Enterprise Bean: Suppliers + */ +@Dependent +public class SuppliersBean implements Serializable { + + @PersistenceContext(unitName = "PBW") + EntityManager em; + + /** + * @param supplierID + * @param name + * @param street + * @param city + * @param state + * @param zip + * @param phone + * @param url + */ + public void createSupplier(String supplierID, + String name, + String street, + String city, + String state, + String zip, + String phone, + String url) { + try { + Util.debug("SuppliersBean.createSupplier() - Entered"); + Supplier supplier = null; + supplier = em.find(Supplier.class, supplierID); + if (supplier == null) { + Util.debug("SuppliersBean.createSupplier() - supplier doesn't exist."); + Util.debug("SuppliersBean.createSupplier() - Creating Supplier for SupplierID: " + supplierID); + supplier = new Supplier(supplierID, name, street, city, state, zip, phone, url); + em.persist(supplier); + } + } catch (Exception e) { + Util.debug("SuppliersBean.createSupplier() - Exception: " + e); + } + } + + /** + * @return Supplier + */ + public Supplier getSupplier() { + // Retrieve the first Supplier Info + try { + Collection suppliers = this.findSuppliers(); + if (suppliers != null) { + Util.debug("AdminServlet.getSupplierInfo() - Supplier found!"); + Iterator i = suppliers.iterator(); + if (i.hasNext()) { + return (Supplier) i.next(); + } + } + } catch (Exception e) { + Util.debug("AdminServlet.getSupplierInfo() - Exception:" + e); + } + return null; + } + + /** + * @param supplierID + * @param name + * @param street + * @param city + * @param state + * @param zip + * @param phone + * @param url + * @return supplierInfo + */ + public Supplier updateSupplier(String supplierID, + String name, + String street, + String city, + String state, + String zip, + String phone, + String url) { + Supplier supplier = null; + try { + Util.debug("SuppliersBean.updateSupplier() - Entered"); + supplier = em.find(Supplier.class, supplierID); + if (supplier != null) { + // Create a new Supplier if there is NOT an existing Supplier. + // supplier = getSupplierLocalHome().findByPrimaryKey(new SupplierKey(supplierID)); + supplier.setName(name); + supplier.setStreet(street); + supplier.setCity(city); + supplier.setUsstate(state); + supplier.setZip(zip); + supplier.setPhone(phone); + supplier.setUrl(url); + } else { + Util.debug("SuppliersBean.updateSupplier() - supplier doesn't exist."); + Util.debug("SuppliersBean.updateSupplier() - Couldn't update Supplier for SupplierID: " + supplierID); + } + } catch (Exception e) { + Util.debug("SuppliersBean.createSupplier() - Exception: " + e); + } + return (supplier); + } + + /** + * @return suppliers + */ + @SuppressWarnings("unchecked") + private Collection findSuppliers() { + Query q = em.createNamedQuery("findAllSuppliers"); + return q.getResultList(); + } +} diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/jpa/BackOrder.java b/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/jpa/BackOrder.java new file mode 100755 index 00000000..e110c1d6 --- /dev/null +++ b/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/jpa/BackOrder.java @@ -0,0 +1,135 @@ +// +// COPYRIGHT LICENSE: This information contains sample code provided in source code form. You may copy, +// modify, and distribute these sample programs in any form without payment to IBM for the purposes of +// developing, using, marketing or distributing application programs conforming to the application +// programming interface for the operating platform for which the sample code is written. +// Notwithstanding anything to the contrary, IBM PROVIDES THE SAMPLE SOURCE CODE ON AN "AS IS" BASIS +// AND IBM DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, ANY IMPLIED +// WARRANTIES OR CONDITIONS OF MERCHANTABILITY, SATISFACTORY QUALITY, FITNESS FOR A PARTICULAR PURPOSE, +// TITLE, AND ANY WARRANTY OR CONDITION OF NON-INFRINGEMENT. IBM SHALL NOT BE LIABLE FOR ANY DIRECT, +// INDIRECT, INCIDENTAL, SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR OPERATION OF THE +// SAMPLE SOURCE CODE. IBM HAS NO OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS +// OR MODIFICATIONS TO THE SAMPLE SOURCE CODE. +// +// (C) COPYRIGHT International Business Machines Corp., 2003,2011 +// All Rights Reserved * Licensed Materials - Property of IBM +// +package com.ibm.websphere.samples.pbw.jpa; + +import javax.persistence.Entity; +import javax.persistence.GeneratedValue; +import javax.persistence.GenerationType; +import javax.persistence.Id; +import javax.persistence.JoinColumn; +import javax.persistence.NamedQueries; +import javax.persistence.NamedQuery; +import javax.persistence.OneToOne; +import javax.persistence.Table; +import javax.persistence.TableGenerator; + +import com.ibm.websphere.samples.pbw.utils.Util; + +/** + * Bean mapping for BACKORDER table. + */ +@Entity(name = "BackOrder") +@Table(name = "BACKORDER", schema = "APP") +@NamedQueries({ @NamedQuery(name = "findAllBackOrders", query = "select b from BackOrder b"), + @NamedQuery(name = "findByInventoryID", query = "select b from BackOrder b where ((b.inventory.inventoryId = :id) and (b.status = 'Order Stock'))"), + @NamedQuery(name = "removeAllBackOrder", query = "delete from BackOrder") }) +public class BackOrder { + @Id + @GeneratedValue(strategy = GenerationType.TABLE, generator = "BackOrderSeq") + @TableGenerator(name = "BackOrderSeq", table = "IDGENERATOR", pkColumnName = "IDNAME", pkColumnValue = "BACKORDER", valueColumnName = "IDVALUE") + private String backOrderID; + private int quantity; + private String status; + private long lowDate; + private long orderDate; + private String supplierOrderID; // missing table + + // relationships + @OneToOne + @JoinColumn(name = "INVENTORYID") + private Inventory inventory; + + public BackOrder() { + } + + public BackOrder(String backOrderID) { + setBackOrderID(backOrderID); + } + + public BackOrder(Inventory inventory, int quantity) { + this.setInventory(inventory); + this.setQuantity(quantity); + this.setStatus(Util.STATUS_ORDERSTOCK); + this.setLowDate(System.currentTimeMillis()); + } + + public String getBackOrderID() { + return backOrderID; + } + + public void setBackOrderID(String backOrderID) { + this.backOrderID = backOrderID; + } + + public long getLowDate() { + return lowDate; + } + + public void setLowDate(long lowDate) { + this.lowDate = lowDate; + } + + public long getOrderDate() { + return orderDate; + } + + public void setOrderDate(long orderDate) { + this.orderDate = orderDate; + } + + public int getQuantity() { + return quantity; + } + + public void setQuantity(int quantity) { + this.quantity = quantity; + } + + public void increateQuantity(int delta) { + if (!(status.equals(Util.STATUS_ORDERSTOCK))) { + Util.debug("BackOrderMgr.createBackOrder() - Backorders found but have already been ordered from the supplier"); + throw new RuntimeException("cannot increase order size for orders already in progress"); + } + // Increase the BackOrder quantity for an existing Back Order. + quantity = quantity + delta; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + + public String getSupplierOrderID() { + return supplierOrderID; + } + + public void setSupplierOrderID(String supplierOrderID) { + this.supplierOrderID = supplierOrderID; + } + + public Inventory getInventory() { + return inventory; + } + + public void setInventory(Inventory inventory) { + this.inventory = inventory; + } + +} diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/jpa/Customer.java b/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/jpa/Customer.java new file mode 100755 index 00000000..61168c82 --- /dev/null +++ b/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/jpa/Customer.java @@ -0,0 +1,204 @@ +// +// COPYRIGHT LICENSE: This information contains sample code provided in source code form. You may copy, +// modify, and distribute these sample programs in any form without payment to IBM for the purposes of +// developing, using, marketing or distributing application programs conforming to the application +// programming interface for the operating platform for which the sample code is written. +// Notwithstanding anything to the contrary, IBM PROVIDES THE SAMPLE SOURCE CODE ON AN "AS IS" BASIS +// AND IBM DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, ANY IMPLIED +// WARRANTIES OR CONDITIONS OF MERCHANTABILITY, SATISFACTORY QUALITY, FITNESS FOR A PARTICULAR PURPOSE, +// TITLE, AND ANY WARRANTY OR CONDITION OF NON-INFRINGEMENT. IBM SHALL NOT BE LIABLE FOR ANY DIRECT, +// INDIRECT, INCIDENTAL, SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR OPERATION OF THE +// SAMPLE SOURCE CODE. IBM HAS NO OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS +// OR MODIFICATIONS TO THE SAMPLE SOURCE CODE. +// +// (C) COPYRIGHT International Business Machines Corp., 2001,2011 +// All Rights Reserved * Licensed Materials - Property of IBM +// +package com.ibm.websphere.samples.pbw.jpa; + +import javax.persistence.Entity; +import javax.persistence.Id; +import javax.persistence.NamedQueries; +import javax.persistence.NamedQuery; +import javax.persistence.Table; +import javax.validation.constraints.NotNull; +import javax.validation.constraints.Pattern; +import javax.validation.constraints.Size; + +/** + * Customer is the bean mapping for the CUSTOMER table. + * + * @see Customer + */ +@Entity(name = "Customer") +@Table(name = "CUSTOMER", schema = "APP") +@NamedQueries({ @NamedQuery(name = "removeAllCustomers", query = "delete from Customer") }) +public class Customer { + @Id + private String customerID; + private String password; + + @NotNull + @Size(min = 1, message = "First name must include at least one letter.") + private String firstName; + @NotNull + @Size(min = 1, message = "Last name must include at least one letter.") + private String lastName; + @NotNull + @Size(min = 1, message = "Address must include at least one letter.") + private String addr1; + private String addr2; + @NotNull + @Size(min = 1, message = "City name must include at least one letter.") + private String addrCity; + @NotNull + @Size(min = 2, message = "State must include at least two letters.") + private String addrState; + @Pattern(regexp = "\\d{5}", message = "Zip code does not have 5 digits.") + private String addrZip; + @NotNull + @Pattern(regexp = "\\d{3}-\\d{3}-\\d{4}", message = "Phone number does not match xxx-xxx-xxxx.") + private String phone; + + public Customer() { + } + + /** + * Create a new Customer. + * + * @param key + * CustomerKey + * @param password + * Password used for this customer account. + * @param firstName + * First name of the customer. + * @param lastName + * Last name of the customer + * @param addr1 + * Street address of the customer + * @param addr2 + * Street address of the customer + * @param addrCity + * City + * @param addrState + * State + * @param addrZip + * Zip code + * @param phone + * Phone number + */ + public Customer(String key, String password, String firstName, String lastName, String addr1, String addr2, + String addrCity, String addrState, String addrZip, String phone) { + this.setCustomerID(key); + this.setPassword(password); + this.setFirstName(firstName); + this.setLastName(lastName); + this.setAddr1(addr1); + this.setAddr2(addr2); + this.setAddrCity(addrCity); + this.setAddrState(addrState); + this.setAddrZip(addrZip); + this.setPhone(phone); + } + + /** + * Verify password. + * + * @param password + * value to be checked. + * @return True, if password matches one stored. + */ + public boolean verifyPassword(String password) { + return this.getPassword().equals(password); + } + + /** + * Get the customer's full name. + * + * @return String of customer's full name. + */ + public String getFullName() { + return this.getFirstName() + " " + this.getLastName(); + } + + public String getAddr1() { + return addr1; + } + + public void setAddr1(String addr1) { + this.addr1 = addr1; + } + + public String getAddr2() { + return addr2; + } + + public void setAddr2(String addr2) { + this.addr2 = addr2; + } + + public String getAddrCity() { + return addrCity; + } + + public void setAddrCity(String addrCity) { + this.addrCity = addrCity; + } + + public String getAddrState() { + return addrState; + } + + public void setAddrState(String addrState) { + this.addrState = addrState; + } + + public String getAddrZip() { + return addrZip; + } + + public void setAddrZip(String addrZip) { + this.addrZip = addrZip; + } + + public String getCustomerID() { + return customerID; + } + + public void setCustomerID(String customerID) { + this.customerID = customerID; + } + + public String getFirstName() { + return firstName; + } + + public void setFirstName(String firstName) { + this.firstName = firstName; + } + + public String getLastName() { + return lastName; + } + + public void setLastName(String lastName) { + this.lastName = lastName; + } + + public String getPassword() { + return password; + } + + public void setPassword(String password) { + this.password = password; + } + + public String getPhone() { + return phone; + } + + public void setPhone(String phone) { + this.phone = phone; + } + +} diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/jpa/Inventory.java b/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/jpa/Inventory.java new file mode 100755 index 00000000..ec5973c0 --- /dev/null +++ b/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/jpa/Inventory.java @@ -0,0 +1,312 @@ +// +// COPYRIGHT LICENSE: This information contains sample code provided in source code form. You may copy, +// modify, and distribute these sample programs in any form without payment to IBM for the purposes of +// developing, using, marketing or distributing application programs conforming to the application +// programming interface for the operating platform for which the sample code is written. +// Notwithstanding anything to the contrary, IBM PROVIDES THE SAMPLE SOURCE CODE ON AN "AS IS" BASIS +// AND IBM DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, ANY IMPLIED +// WARRANTIES OR CONDITIONS OF MERCHANTABILITY, SATISFACTORY QUALITY, FITNESS FOR A PARTICULAR PURPOSE, +// TITLE, AND ANY WARRANTY OR CONDITION OF NON-INFRINGEMENT. IBM SHALL NOT BE LIABLE FOR ANY DIRECT, +// INDIRECT, INCIDENTAL, SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR OPERATION OF THE +// SAMPLE SOURCE CODE. IBM HAS NO OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS +// OR MODIFICATIONS TO THE SAMPLE SOURCE CODE. +// +// (C) COPYRIGHT International Business Machines Corp., 2001,2011 +// All Rights Reserved * Licensed Materials - Property of IBM +// +package com.ibm.websphere.samples.pbw.jpa; + +import javax.persistence.Entity; +import javax.persistence.Id; +import javax.persistence.NamedQueries; +import javax.persistence.NamedQuery; +import javax.persistence.Table; +import javax.persistence.Transient; +import javax.persistence.Version; + +import com.ibm.websphere.samples.pbw.utils.Util; + +/** + * Inventory is the bean mapping for the INVENTORY table. It provides information about products the + * store has for sale. + * + * @see Inventory + */ +@Entity(name = "Inventory") +@Table(name = "INVENTORY", schema = "APP") +@NamedQueries({ + @NamedQuery(name = "getItemsByCategory", query = "select i from Inventory i where i.category = :category ORDER BY i.inventoryId"), + @NamedQuery(name = "getItemsLikeName", query = "select i from Inventory i where i.name like :name"), + @NamedQuery(name = "removeAllInventory", query = "delete from Inventory") }) +public class Inventory implements Cloneable, java.io.Serializable { + private static final long serialVersionUID = 1L; + private static final int DEFAULT_MINTHRESHOLD = 50; + private static final int DEFAULT_MAXTHRESHOLD = 200; + @Id + private String inventoryId; + private String name; + private String heading; + private String description; + private String pkginfo; + private String image; + private byte[] imgbytes; + private float price; + private float cost; + private int quantity; + private int category; + private String notes; + private boolean isPublic; + private int minThreshold; + private int maxThreshold; + + @Version + private long version; + + @Transient + private BackOrder backOrder; + + public Inventory() { + } + + /** + * Create a new Inventory. + * + * @param key + * Inventory Key + * @param name + * Name of inventory item. + * @param heading + * Description heading of inventory item. + * @param desc + * Description of inventory item. + * @param pkginfo + * Package info of inventory item. + * @param image + * Image of inventory item. + * @param price + * Price of inventory item. + * @param cost + * Cost of inventory item. + * @param quantity + * Quantity of inventory items in stock. + * @param category + * Category of inventory item. + * @param notes + * Notes of inventory item. + * @param isPublic + * Access permission of inventory item. + */ + public Inventory(String key, String name, String heading, String desc, String pkginfo, String image, float price, + float cost, int quantity, int category, String notes, boolean isPublic) { + this.setInventoryId(key); + Util.debug("creating new Inventory, inventoryId=" + this.getInventoryId()); + this.setName(name); + this.setHeading(heading); + this.setDescription(desc); + this.setPkginfo(pkginfo); + this.setImage(image); + this.setPrice(price); + this.setCost(cost); + this.setQuantity(quantity); + this.setCategory(category); + this.setNotes(notes); + this.setIsPublic(isPublic); + this.setMinThreshold(DEFAULT_MINTHRESHOLD); + this.setMaxThreshold(DEFAULT_MAXTHRESHOLD); + + } + + /** + * Create a new Inventory. + * + * @param item + * Inventory to use to make a new inventory item. + */ + public Inventory(Inventory item) { + this.setInventoryId(item.getInventoryId()); + this.setName(item.getName()); + this.setHeading(item.getHeading()); + this.setDescription(item.getDescription()); + this.setPkginfo(item.getPkginfo()); + this.setImage(item.getImage()); + this.setPrice(item.getPrice()); + this.setCost(item.getCost()); + this.setQuantity(item.getQuantity()); + this.setCategory(item.getCategory()); + this.setNotes(item.getNotes()); + this.setMinThreshold(DEFAULT_MINTHRESHOLD); + this.setMaxThreshold(DEFAULT_MAXTHRESHOLD); + + setIsPublic(item.isPublic()); + + // does not clone BackOrder info + } + + /** + * Increase the quantity of this inventory item. + * + * @param quantity + * The number to increase the inventory by. + */ + public void increaseInventory(int quantity) { + this.setQuantity(this.getQuantity() + quantity); + } + + public int getCategory() { + return category; + } + + public void setCategory(int category) { + this.category = category; + } + + public float getCost() { + return cost; + } + + public void setCost(float cost) { + this.cost = cost; + } + + public String getDescription() { + return description; + } + + public void setDescription(String description) { + this.description = description; + } + + public String getHeading() { + return heading; + } + + public void setHeading(String heading) { + this.heading = heading; + } + + public String getImage() { + return image; + } + + public void setImage(String image) { + this.image = image; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public String getNotes() { + return notes; + } + + public void setNotes(String notes) { + this.notes = notes; + } + + public String getPkginfo() { + return pkginfo; + } + + public void setPkginfo(String pkginfo) { + this.pkginfo = pkginfo; + } + + public float getPrice() { + return price; + } + + public void setPrice(float price) { + this.price = price; + } + + public int getQuantity() { + return quantity; + } + + public void setQuantity(int quantity) { + this.quantity = quantity; + } + + public int getMaxThreshold() { + return maxThreshold; + } + + public void setMaxThreshold(int maxThreshold) { + this.maxThreshold = maxThreshold; + } + + public int getMinThreshold() { + return minThreshold; + } + + public void setMinThreshold(int minThreshold) { + this.minThreshold = minThreshold; + } + + public String getInventoryId() { + return inventoryId; + } + + public void setInventoryId(String id) { + inventoryId = id; + } + + /** + * Same as getInventoryId. Added for compatability with ShoppingCartItem when used by the Client + * XJB sample + * + * @return String ID of the inventory item + */ + public String getID() { + return inventoryId; + } + + /** + * Same as setInventoryId. Added for compatability with ShoppingCartItem when used by the Client + * XJB sample + * + */ + public void setID(String id) { + inventoryId = id; + } + + public boolean isPublic() { + return isPublic; + } + + public void setIsPublic(boolean isPublic) { + this.isPublic = isPublic; + } + + /** Set the inventory item's public availability. */ + public void setPrivacy(boolean isPublic) { + setIsPublic(isPublic); + } + + public byte[] getImgbytes() { + return imgbytes; + } + + public void setImgbytes(byte[] imgbytes) { + this.imgbytes = imgbytes; + } + + public BackOrder getBackOrder() { + return backOrder; + } + + public void setBackOrder(BackOrder backOrder) { + this.backOrder = backOrder; + } + + @Override + public String toString() { + return getClass().getSimpleName() + "{id=" + inventoryId + "}"; + } + +} diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/jpa/Order.java b/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/jpa/Order.java new file mode 100755 index 00000000..eefe51e9 --- /dev/null +++ b/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/jpa/Order.java @@ -0,0 +1,393 @@ +// +// COPYRIGHT LICENSE: This information contains sample code provided in source code form. You may copy, +// modify, and distribute these sample programs in any form without payment to IBM for the purposes of +// developing, using, marketing or distributing application programs conforming to the application +// programming interface for the operating platform for which the sample code is written. +// Notwithstanding anything to the contrary, IBM PROVIDES THE SAMPLE SOURCE CODE ON AN "AS IS" BASIS +// AND IBM DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, ANY IMPLIED +// WARRANTIES OR CONDITIONS OF MERCHANTABILITY, SATISFACTORY QUALITY, FITNESS FOR A PARTICULAR PURPOSE, +// TITLE, AND ANY WARRANTY OR CONDITION OF NON-INFRINGEMENT. IBM SHALL NOT BE LIABLE FOR ANY DIRECT, +// INDIRECT, INCIDENTAL, SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR OPERATION OF THE +// SAMPLE SOURCE CODE. IBM HAS NO OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS +// OR MODIFICATIONS TO THE SAMPLE SOURCE CODE. +// +// (C) COPYRIGHT International Business Machines Corp., 2001,2011 +// All Rights Reserved * Licensed Materials - Property of IBM +// + +package com.ibm.websphere.samples.pbw.jpa; + +import java.util.Collection; + +import javax.persistence.Entity; +import javax.persistence.GeneratedValue; +import javax.persistence.GenerationType; +import javax.persistence.Id; +import javax.persistence.JoinColumn; +import javax.persistence.ManyToOne; +import javax.persistence.NamedQueries; +import javax.persistence.NamedQuery; +import javax.persistence.Table; +import javax.persistence.TableGenerator; +import javax.persistence.Transient; + +import com.ibm.websphere.samples.pbw.utils.Util; + +/** + * Bean mapping for the ORDER1 table. + */ +@Entity(name = "Order") +@Table(name = "ORDER1", schema = "APP") +@NamedQueries({ @NamedQuery(name = "removeAllOrders", query = "delete from Order") }) +public class Order { + public static final String ORDER_INFO_TABLE_NAME = "java:comp/env/jdbc/OrderInfoTableName"; + public static final String ORDER_ITEMS_TABLE_NAME = "java:comp/env/jdbc/OrderItemsTableName"; + + @Id + @GeneratedValue(strategy = GenerationType.TABLE, generator = "OrderSeq") + @TableGenerator(name = "OrderSeq", table = "IDGENERATOR", pkColumnName = "IDNAME", pkColumnValue = "ORDER", valueColumnName = "IDVALUE") + private String orderID; + private String sellDate; + private String billName; + private String billAddr1; + private String billAddr2; + private String billCity; + private String billState; + private String billZip; + private String billPhone; + private String shipName; + private String shipAddr1; + private String shipAddr2; + private String shipCity; + private String shipState; + private String shipZip; + private String shipPhone; + private String creditCard; + private String ccNum; + private String ccExpireMonth; + private String ccExpireYear; + private String cardHolder; + private int shippingMethod; + private float profit; + + @ManyToOne + @JoinColumn(name = "CUSTOMERID") + private Customer customer; + @Transient + private Collection orderItems; + + @Transient + private Collection items = null; + + /** + * Constructor to create an Order. + * + * @param customer + * - customer who created the order + * @param billName + * - billing name + * @param billAddr1 + * - billing address line 1 + * @param billAddr2 + * - billing address line 2 + * @param billCity + * - billing address city + * @param billState + * - billing address state + * @param billZip + * - billing address zip code + * @param billPhone + * - billing phone + * @param shipName + * - shippng name + * @param shipAddr1 + * - shippng address line 1 + * @param shipAddr2 + * - shippng address line 2 + * @param shipCity + * - shippng address city + * @param shipState + * - shippng address state + * @param shipZip + * - shippng address zip code + * @param shipPhone + * - shippng phone + * @param creditCard + * - credit card + * @param ccNum + * - credit card number + * @param ccExpireMonth + * - credit card expiration month + * @param ccExpireYear + * - credit card expiration year + * @param cardHolder + * - credit card holder name + * @param shippingMethod + * int of shipping method used + * @param items + * vector of StoreItems ordered + */ + public Order(Customer customer, String billName, String billAddr1, String billAddr2, String billCity, + String billState, String billZip, String billPhone, String shipName, String shipAddr1, String shipAddr2, + String shipCity, String shipState, String shipZip, String shipPhone, String creditCard, String ccNum, + String ccExpireMonth, String ccExpireYear, String cardHolder, int shippingMethod, + Collection items) { + this.setSellDate(Long.toString(System.currentTimeMillis())); + + // Pad it to 14 digits so sorting works properly. + if (this.getSellDate().length() < 14) { + StringBuffer sb = new StringBuffer(Util.ZERO_14); + sb.replace((14 - this.getSellDate().length()), 14, this.getSellDate()); + this.setSellDate(sb.toString()); + } + + this.setCustomer(customer); + this.setBillName(billName); + this.setBillAddr1(billAddr1); + this.setBillAddr2(billAddr2); + this.setBillCity(billCity); + this.setBillState(billState); + this.setBillZip(billZip); + this.setBillPhone(billPhone); + this.setShipName(shipName); + this.setShipAddr1(shipAddr1); + this.setShipAddr2(shipAddr2); + this.setShipCity(shipCity); + this.setShipState(shipState); + this.setShipZip(shipZip); + this.setShipPhone(shipPhone); + this.setCreditCard(creditCard); + this.setCcNum(ccNum); + this.setCcExpireMonth(ccExpireMonth); + this.setCcExpireYear(ccExpireYear); + this.setCardHolder(cardHolder); + this.setShippingMethod(shippingMethod); + this.items = items; + + // Get profit for total order. + OrderItem oi; + float profit; + profit = 0.0f; + for (Object o : items) { + oi = (OrderItem) o; + profit = profit + (oi.getQuantity() * (oi.getPrice() - oi.getCost())); + oi.setOrder(this); + } + this.setProfit(profit); + } + + public Order(String orderID) { + setOrderID(orderID); + } + + public Order() { + } + + public String getBillAddr1() { + return billAddr1; + } + + public void setBillAddr1(String billAddr1) { + this.billAddr1 = billAddr1; + } + + public String getBillAddr2() { + return billAddr2; + } + + public void setBillAddr2(String billAddr2) { + this.billAddr2 = billAddr2; + } + + public String getBillCity() { + return billCity; + } + + public void setBillCity(String billCity) { + this.billCity = billCity; + } + + public String getBillName() { + return billName; + } + + public void setBillName(String billName) { + this.billName = billName; + } + + public String getBillPhone() { + return billPhone; + } + + public void setBillPhone(String billPhone) { + this.billPhone = billPhone; + } + + public String getBillState() { + return billState; + } + + public void setBillState(String billState) { + this.billState = billState; + } + + public String getBillZip() { + return billZip; + } + + public void setBillZip(String billZip) { + this.billZip = billZip; + } + + public String getCardHolder() { + return cardHolder; + } + + public void setCardHolder(String cardHolder) { + this.cardHolder = cardHolder; + } + + public String getCcExpireMonth() { + return ccExpireMonth; + } + + public void setCcExpireMonth(String ccExpireMonth) { + this.ccExpireMonth = ccExpireMonth; + } + + public String getCcExpireYear() { + return ccExpireYear; + } + + public void setCcExpireYear(String ccExpireYear) { + this.ccExpireYear = ccExpireYear; + } + + public String getCcNum() { + return ccNum; + } + + public void setCcNum(String ccNum) { + this.ccNum = ccNum; + } + + public String getCreditCard() { + return creditCard; + } + + public void setCreditCard(String creditCard) { + this.creditCard = creditCard; + } + + public Customer getCustomer() { + return customer; + } + + public void setCustomer(Customer customer) { + this.customer = customer; + } + + public Collection getItems() { + return items; + } + + public void setItems(Collection items) { + this.items = items; + } + + public String getOrderID() { + return orderID; + } + + public void setOrderID(String orderID) { + this.orderID = orderID; + } + + public Collection getOrderItems() { + return orderItems; + } + + public void setOrderItems(Collection orderItems) { + this.orderItems = orderItems; + } + + public float getProfit() { + return profit; + } + + public void setProfit(float profit) { + this.profit = profit; + } + + public String getSellDate() { + return sellDate; + } + + public void setSellDate(String sellDate) { + this.sellDate = sellDate; + } + + public String getShipAddr1() { + return shipAddr1; + } + + public void setShipAddr1(String shipAddr1) { + this.shipAddr1 = shipAddr1; + } + + public String getShipAddr2() { + return shipAddr2; + } + + public void setShipAddr2(String shipAddr2) { + this.shipAddr2 = shipAddr2; + } + + public String getShipCity() { + return shipCity; + } + + public void setShipCity(String shipCity) { + this.shipCity = shipCity; + } + + public String getShipName() { + return shipName; + } + + public void setShipName(String shipName) { + this.shipName = shipName; + } + + public String getShipPhone() { + return shipPhone; + } + + public void setShipPhone(String shipPhone) { + this.shipPhone = shipPhone; + } + + public int getShippingMethod() { + return shippingMethod; + } + + public void setShippingMethod(int shippingMethod) { + this.shippingMethod = shippingMethod; + } + + public String getShipZip() { + return shipZip; + } + + public void setShipZip(String shipZip) { + this.shipZip = shipZip; + } + + public String getShipState() { + return shipState; + } + + public void setShipState(String shipState) { + this.shipState = shipState; + } +} diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/jpa/OrderItem.java b/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/jpa/OrderItem.java new file mode 100755 index 00000000..c1dc2cf0 --- /dev/null +++ b/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/jpa/OrderItem.java @@ -0,0 +1,228 @@ +// +// COPYRIGHT LICENSE: This information contains sample code provided in source code form. You may copy, +// modify, and distribute these sample programs in any form without payment to IBM for the purposes of +// developing, using, marketing or distributing application programs conforming to the application +// programming interface for the operating platform for which the sample code is written. +// Notwithstanding anything to the contrary, IBM PROVIDES THE SAMPLE SOURCE CODE ON AN "AS IS" BASIS +// AND IBM DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, ANY IMPLIED +// WARRANTIES OR CONDITIONS OF MERCHANTABILITY, SATISFACTORY QUALITY, FITNESS FOR A PARTICULAR PURPOSE, +// TITLE, AND ANY WARRANTY OR CONDITION OF NON-INFRINGEMENT. IBM SHALL NOT BE LIABLE FOR ANY DIRECT, +// INDIRECT, INCIDENTAL, SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR OPERATION OF THE +// SAMPLE SOURCE CODE. IBM HAS NO OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS +// OR MODIFICATIONS TO THE SAMPLE SOURCE CODE. +// +// (C) COPYRIGHT International Business Machines Corp., 2003,2011 +// All Rights Reserved * Licensed Materials - Property of IBM +// +package com.ibm.websphere.samples.pbw.jpa; + +import javax.persistence.Column; +import javax.persistence.Embeddable; +import javax.persistence.EmbeddedId; +import javax.persistence.Entity; +import javax.persistence.JoinColumn; +import javax.persistence.ManyToOne; +import javax.persistence.NamedQueries; +import javax.persistence.NamedQuery; +import javax.persistence.Table; +import javax.persistence.Transient; + +import com.ibm.websphere.samples.pbw.utils.Util; + +/** + * Bean mapping for the ORDERITEM table. + */ +@Entity(name = "OrderItem") +@Table(name = "ORDERITEM", schema = "APP") +@NamedQueries({ @NamedQuery(name = "removeAllOrderItem", query = "delete from OrderItem") }) +public class OrderItem { + /** + * Composite Key class for Entity Bean: OrderItem + * + * Key consists of essentially two foreign key relations, but is mapped as foreign keys. + */ + @Embeddable + public static class PK implements java.io.Serializable { + static final long serialVersionUID = 3206093459760846163L; + @Column(name = "inventoryID") + public String inventoryID; + @Column(name = "ORDER_ORDERID") + public String order_orderID; + + public PK() { + Util.debug("OrderItem.PK()"); + } + + public PK(String inventoryID, String argOrder) { + Util.debug("OrderItem.PK() inventoryID=" + inventoryID + "="); + Util.debug("OrderItem.PK() orderID=" + argOrder + "="); + this.inventoryID = inventoryID; + this.order_orderID = argOrder; + } + + /** + * Returns true if both keys are equal. + */ + public boolean equals(java.lang.Object otherKey) { + if (otherKey instanceof PK) { + PK o = (PK) otherKey; + return ((this.inventoryID.equals(o.inventoryID)) && (this.order_orderID.equals(o.order_orderID))); + } + return false; + } + + /** + * Returns the hash code for the key. + */ + public int hashCode() { + Util.debug("OrderItem.PK.hashCode() inventoryID=" + inventoryID + "="); + Util.debug("OrderItem.PK.hashCode() orderID=" + order_orderID + "="); + + return (inventoryID.hashCode() + order_orderID.hashCode()); + } + } + + @SuppressWarnings("unused") + @EmbeddedId + private OrderItem.PK id; + private String name; + private String pkginfo; + private float price; + private float cost; + private int category; + private int quantity; + private String sellDate; + @Transient + private String inventoryId; + + @ManyToOne + @JoinColumn(name = "INVENTORYID", insertable = false, updatable = false) + private Inventory inventory; + @ManyToOne + @JoinColumn(name = "ORDER_ORDERID", insertable = false, updatable = false) + private Order order; + + public int getCategory() { + return category; + } + + public void setCategory(int category) { + this.category = category; + } + + public float getCost() { + return cost; + } + + public void setCost(float cost) { + this.cost = cost; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public String getPkginfo() { + return pkginfo; + } + + public void setPkginfo(String pkginfo) { + this.pkginfo = pkginfo; + } + + public float getPrice() { + return price; + } + + public void setPrice(float price) { + this.price = price; + } + + public int getQuantity() { + return quantity; + } + + public void setQuantity(int quantity) { + this.quantity = quantity; + } + + public String getSellDate() { + return sellDate; + } + + public void setSellDate(String sellDate) { + this.sellDate = sellDate; + } + + public OrderItem() { + } + + public OrderItem(Inventory inv) { + Util.debug("OrderItem(inv) - id = " + inv.getInventoryId()); + setInventoryId(inv.getInventoryId()); + inventory = inv; + name = inv.getName(); + pkginfo = inv.getPkginfo(); + price = inv.getPrice(); + cost = inv.getCost(); + category = inv.getCategory(); + } + + public OrderItem(Order order, String orderID, Inventory inv, java.lang.String name, java.lang.String pkginfo, + float price, float cost, int quantity, int category, java.lang.String sellDate) { + Util.debug("OrderItem(etc.)"); + inventory = inv; + setInventoryId(inv.getInventoryId()); + setName(name); + setPkginfo(pkginfo); + setPrice(price); + setCost(cost); + setQuantity(quantity); + setCategory(category); + setSellDate(sellDate); + setOrder(order); + id = new OrderItem.PK(inv.getInventoryId(), order.getOrderID()); + } + + /* + * updates the primary key field with the composite orderId+inventoryId + */ + public void updatePK() { + id = new OrderItem.PK(inventoryId, order.getOrderID()); + } + + public Inventory getInventory() { + return inventory; + } + + public void setInventory(Inventory inv) { + this.inventory = inv; + } + + public Order getOrder() { + return order; + } + + /** + * Sets the order for this item Also updates the sellDate + * + * @param order + */ + public void setOrder(Order order) { + this.order = order; + this.sellDate = order.getSellDate(); + } + + public String getInventoryId() { + return inventoryId; + } + + public void setInventoryId(String inventoryId) { + this.inventoryId = inventoryId; + } + +} \ No newline at end of file diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/jpa/OrderKey.java b/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/jpa/OrderKey.java new file mode 100755 index 00000000..f3993f3b --- /dev/null +++ b/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/jpa/OrderKey.java @@ -0,0 +1,81 @@ +// +// COPYRIGHT LICENSE: This information contains sample code provided in source code form. You may copy, +// modify, and distribute these sample programs in any form without payment to IBM for the purposes of +// developing, using, marketing or distributing application programs conforming to the application +// programming interface for the operating platform for which the sample code is written. +// Notwithstanding anything to the contrary, IBM PROVIDES THE SAMPLE SOURCE CODE ON AN "AS IS" BASIS +// AND IBM DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, ANY IMPLIED +// WARRANTIES OR CONDITIONS OF MERCHANTABILITY, SATISFACTORY QUALITY, FITNESS FOR A PARTICULAR PURPOSE, +// TITLE, AND ANY WARRANTY OR CONDITION OF NON-INFRINGEMENT. IBM SHALL NOT BE LIABLE FOR ANY DIRECT, +// INDIRECT, INCIDENTAL, SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR OPERATION OF THE +// SAMPLE SOURCE CODE. IBM HAS NO OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS +// OR MODIFICATIONS TO THE SAMPLE SOURCE CODE. +// +// (C) COPYRIGHT International Business Machines Corp., 2001,2011 +// All Rights Reserved * Licensed Materials - Property of IBM +// +package com.ibm.websphere.samples.pbw.jpa; + +import java.io.Serializable; + +/** + * The key class of the Order entity bean. + **/ +public class OrderKey implements Serializable { + + private static final long serialVersionUID = 7912030586849592135L; + + public String orderID; + + /** + * Constructs an OrderKey object. + */ + public OrderKey() { + } + + /** + * Constructs a newly allocated OrderKey object that represents the primitive long argument. + */ + public OrderKey(String orderID) { + this.orderID = orderID; + } + + /** + * Determines if the OrderKey object passed to the method matches this OrderKey object. + * + * @param obj + * java.lang.Object The OrderKey object to compare to this OrderKey object. + * @return boolean The pass object is either equal to this OrderKey object (true) or not. + */ + public boolean equals(Object obj) { + if (obj instanceof OrderKey) { + OrderKey otherKey = (OrderKey) obj; + return (((orderID.equals(otherKey.orderID)))); + } else + return false; + } + + /** + * Generates a hash code for this OrderKey object. + * + * @return int The hash code. + */ + public int hashCode() { + return (orderID.hashCode()); + } + + /** + * Get accessor for persistent attribute: orderID + */ + public java.lang.String getOrderID() { + return orderID; + } + + /** + * Set accessor for persistent attribute: orderID + */ + public void setOrderID(java.lang.String newOrderID) { + orderID = newOrderID; + } + +} diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/jpa/Supplier.java b/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/jpa/Supplier.java new file mode 100755 index 00000000..1ec9f434 --- /dev/null +++ b/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/jpa/Supplier.java @@ -0,0 +1,135 @@ +// +// COPYRIGHT LICENSE: This information contains sample code provided in source code form. You may copy, +// modify, and distribute these sample programs in any form without payment to IBM for the purposes of +// developing, using, marketing or distributing application programs conforming to the application +// programming interface for the operating platform for which the sample code is written. +// Notwithstanding anything to the contrary, IBM PROVIDES THE SAMPLE SOURCE CODE ON AN "AS IS" BASIS +// AND IBM DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, ANY IMPLIED +// WARRANTIES OR CONDITIONS OF MERCHANTABILITY, SATISFACTORY QUALITY, FITNESS FOR A PARTICULAR PURPOSE, +// TITLE, AND ANY WARRANTY OR CONDITION OF NON-INFRINGEMENT. IBM SHALL NOT BE LIABLE FOR ANY DIRECT, +// INDIRECT, INCIDENTAL, SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR OPERATION OF THE +// SAMPLE SOURCE CODE. IBM HAS NO OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS +// OR MODIFICATIONS TO THE SAMPLE SOURCE CODE. +// +// (C) COPYRIGHT International Business Machines Corp., 2004,2011 +// All Rights Reserved * Licensed Materials - Property of IBM +// +package com.ibm.websphere.samples.pbw.jpa; + +import javax.persistence.Entity; +import javax.persistence.Id; +import javax.persistence.NamedQueries; +import javax.persistence.NamedQuery; +import javax.persistence.Table; + +/** + * Bean mapping for the SUPPLIER table. + */ +@Entity(name = "Supplier") +@Table(name = "SUPPLIER", schema = "APP") +@NamedQueries({ @NamedQuery(name = "findAllSuppliers", query = "select s from Supplier s"), + @NamedQuery(name = "removeAllSupplier", query = "delete from Supplier") }) +public class Supplier { + @Id + private String supplierID; + private String name; + private String city; + private String usstate; + private String zip; + private String phone; + private String url; + private String street; + + public String getCity() { + return city; + } + + public void setCity(String city) { + this.city = city; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public String getPhone() { + return phone; + } + + public void setPhone(String phone) { + this.phone = phone; + } + + public String getStreet() { + return street; + } + + public void setStreet(String street) { + this.street = street; + } + + public String getSupplierID() { + return supplierID; + } + + public void setSupplierID(String supplierID) { + this.supplierID = supplierID; + } + + public String getUrl() { + return url; + } + + public void setUrl(String url) { + this.url = url; + } + + public String getUsstate() { + return usstate; + } + + public void setUsstate(String usstate) { + this.usstate = usstate; + } + + public String getZip() { + return zip; + } + + public void setZip(String zip) { + this.zip = zip; + } + + public Supplier() { + } + + public Supplier(String supplierID) { + setSupplierID(supplierID); + } + + /** + * @param supplierID + * @param name + * @param street + * @param city + * @param state + * @param zip + * @param phone + * @param url + */ + public Supplier(String supplierID, String name, String street, String city, String state, String zip, String phone, + String url) { + this.setSupplierID(supplierID); + this.setName(name); + this.setStreet(street); + this.setCity(city); + this.setUsstate(state); + this.setZip(zip); + this.setPhone(phone); + this.setUrl(url); + } +} diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/utils/ListProperties.java b/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/utils/ListProperties.java new file mode 100644 index 00000000..6cca5c77 --- /dev/null +++ b/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/utils/ListProperties.java @@ -0,0 +1,155 @@ +// +// COPYRIGHT LICENSE: This information contains sample code provided in source code form. You may copy, +// modify, and distribute these sample programs in any form without payment to IBM for the purposes of +// developing, using, marketing or distributing application programs conforming to the application +// programming interface for the operating platform for which the sample code is written. +// Notwithstanding anything to the contrary, IBM PROVIDES THE SAMPLE SOURCE CODE ON AN "AS IS" BASIS +// AND IBM DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, ANY IMPLIED +// WARRANTIES OR CONDITIONS OF MERCHANTABILITY, SATISFACTORY QUALITY, FITNESS FOR A PARTICULAR PURPOSE, +// TITLE, AND ANY WARRANTY OR CONDITION OF NON-INFRINGEMENT. IBM SHALL NOT BE LIABLE FOR ANY DIRECT, +// INDIRECT, INCIDENTAL, SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR OPERATION OF THE +// SAMPLE SOURCE CODE. IBM HAS NO OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS +// OR MODIFICATIONS TO THE SAMPLE SOURCE CODE. +// +// (C) COPYRIGHT International Business Machines Corp., 2004,2011 +// All Rights Reserved * Licensed Materials - Property of IBM +// +package com.ibm.websphere.samples.pbw.utils; +import java.io.BufferedReader; +import java.io.IOException; +import java.io.InputStream; +import java.io.InputStreamReader; +import java.util.Hashtable; +import java.util.Properties; +import java.util.StringTokenizer; +import java.util.Vector; + + +/** + * @author aamortim + * + * To change the template for this generated type comment go to + * Window>Preferences>Java>Code Generation>Code and Comments + */ +/** + * Utility class. + */ +public class ListProperties extends Properties { + /** + * + */ + private static final long serialVersionUID = 1L; + private Hashtable> listProps = null; + /* Method load + * @param inStream + */ + + public void load(InputStream inStream) throws IOException { + try { + Util.debug("ListProperties.load - loading from stream "+inStream); + // Parse property file, remove comments, blank lines, and combine + // continued lines. + String propFile = ""; + BufferedReader inputLine = new BufferedReader(new InputStreamReader(inStream)); + String line = inputLine.readLine(); + boolean lineContinue = false; + while (line != null) { + Util.debug("ListProperties.load - Line read: " + line); + line = line.trim(); + String currLine = ""; + if (line.startsWith("#")) { + // Skipping comment + } else if (line.startsWith("!")) { + // Skipping comment + } else if (line.equals("")) { + // Skipping blank lines + } else { + if (!lineContinue) { + currLine = line; + } else { + // This is a continuation line. Add to previous line. + currLine += line; + } + // Must be a property line + if (line.endsWith("\\")) { + // Next line is continued from the current one. + lineContinue = true; + } else { + // The current line is completed. Parse the property. + propFile += currLine + "\n"; + currLine = ""; + lineContinue = false; + } + } + line = inputLine.readLine(); + } + // Load Properties + listProps = new Hashtable>(); + // Now parse the Properties to create an array + String[] props = readTokens(propFile, "\n"); + for (int index = 0; index < props.length; index++) { + Util.debug("ListProperties.load() - props[" + index + "] = " + props[index]); + // Parse the line to get the key,value pair + String[] val = readTokens(props[index], "="); + Util.debug("ListProperties.load() - val[0]: " + val[0] + " val[1]: " + val[1]); + if (!val[0].equals("")) { + if (this.containsKey(val[0])) { + // Previous key,value was already created. + // Need an array + Vector currList = (Vector) listProps.get(val[0]); + if ((currList == null) || currList.isEmpty()) { + currList = new Vector(); + String prevVal = this.getProperty(val[0]); + currList.addElement(prevVal); + } + currList.addElement(val[1]); + listProps.put(val[0], currList); + } + this.setProperty(val[0], val[1]); + } + } + } catch (Exception e) { + Util.debug("ListProperties.load(): Exception: " + e); + e.printStackTrace(); + } + } + /** + * Method readTokens. + * @param text + * @param token + * @return list + */ + public String[] readTokens(String text, String token) { + StringTokenizer parser = new StringTokenizer(text, token); + int numTokens = parser.countTokens(); + String[] list = new String[numTokens]; + for (int i = 0; i < numTokens; i++) { + list[i] = parser.nextToken(); + } + return list; + } + /** + * Method getProperties. + * @param name + * @return values + */ + public String[] getProperties(String name) { + String[] values = { "" }; + try { + String value = this.getProperty(name); + Util.debug("ListProperties.getProperties: property (" + name + ") -> " + value); + if (listProps.containsKey(name)) { + Vector list = (Vector) listProps.get(name); + values = new String[list.size()]; + for (int index = 0; index < list.size(); index++) { + values[index] = (String) list.elementAt(index); + } + } else { + values[0] = value; + } + } catch (Exception e) { + Util.debug("ListProperties.getProperties(): Exception: " + e); + } + return (values); + } +} diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/utils/Util.java b/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/utils/Util.java new file mode 100644 index 00000000..7ec40402 --- /dev/null +++ b/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/utils/Util.java @@ -0,0 +1,311 @@ +// +// COPYRIGHT LICENSE: This information contains sample code provided in source code form. You may copy, +// modify, and distribute these sample programs in any form without payment to IBM for the purposes of +// developing, using, marketing or distributing application programs conforming to the application +// programming interface for the operating platform for which the sample code is written. +// Notwithstanding anything to the contrary, IBM PROVIDES THE SAMPLE SOURCE CODE ON AN "AS IS" BASIS +// AND IBM DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, ANY IMPLIED +// WARRANTIES OR CONDITIONS OF MERCHANTABILITY, SATISFACTORY QUALITY, FITNESS FOR A PARTICULAR PURPOSE, +// TITLE, AND ANY WARRANTY OR CONDITION OF NON-INFRINGEMENT. IBM SHALL NOT BE LIABLE FOR ANY DIRECT, +// INDIRECT, INCIDENTAL, SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR OPERATION OF THE +// SAMPLE SOURCE CODE. IBM HAS NO OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS +// OR MODIFICATIONS TO THE SAMPLE SOURCE CODE. +// +// (C) COPYRIGHT International Business Machines Corp., 2001,2011 +// All Rights Reserved * Licensed Materials - Property of IBM +// +package com.ibm.websphere.samples.pbw.utils; + +import java.io.FileNotFoundException; +import java.text.NumberFormat; +import java.util.StringTokenizer; + +import javax.faces.application.Application; +import javax.faces.application.ProjectStage; +import javax.faces.context.FacesContext; +import javax.naming.InitialContext; +import javax.naming.NamingException; + +/** + * Utility class. + */ +public class Util { + /** Datasource name. */ + public static final String DS_NAME = "java:comp/env/jdbc/PlantsByWebSphereDataSource"; + // Constants for JSPs and HTMLs. + public static final String PAGE_ACCOUNT = "account.jsp"; + public static final String PAGE_CART = "cart.jsp"; + public static final String PAGE_CHECKOUTFINAL = "checkout_final.jsp"; + public static final String PAGE_HELP = "help.jsp"; + public static final String PAGE_LOGIN = "login.jsp"; + public static final String PAGE_ORDERDONE = "orderdone.jsp"; + public static final String PAGE_ORDERINFO = "orderinfo.jsp"; + public static final String PAGE_PRODUCT = "product.jsp"; + public static final String PAGE_PROMO = "promo.html"; + public static final String PAGE_REGISTER = "register.jsp"; + public static final String PAGE_SHOPPING = "shopping.jsp"; + public static final String PAGE_BACKADMIN = "backorderadmin.jsp"; + public static final String PAGE_SUPPLIERCFG = "supplierconfig.jsp"; + public static final String PAGE_ADMINHOME = "admin.html"; + public static final String PAGE_ADMINACTIONS = "adminactions.html"; + // Request and session attributes. + public static final String ATTR_ACTION = "action"; + public static final String ATTR_CART = "ShoppingCart"; +// public static final String ATTR_CART_CONTENTS = "CartContents"; + public static final String ATTR_CARTITEMS = "cartitems"; + public static final String ATTR_CATEGORY = "Category"; + public static final String ATTR_CHECKOUT = "CheckingOut"; + public static final String ATTR_CUSTOMER = "CustomerInfo"; + public static final String ATTR_EDITACCOUNTINFO = "EditAccountInfo"; + public static final String ATTR_INVITEM = "invitem"; + public static final String ATTR_INVITEMS = "invitems"; + public static final String ATTR_ORDERID = "OrderID"; + public static final String ATTR_ORDERINFO = "OrderInfo"; + public static final String ATTR_ORDERKEY = "OrderKey"; + public static final String ATTR_RESULTS = "results"; + public static final String ATTR_UPDATING = "updating"; + public static final int ATTR_SFTIMEOUT = 10; // if this is changed, updated session timeout + // in the PlantsByWebSphere web.xml + public static final String ATTR_SUPPLIER = "SupplierInfo"; + // Admin type actions + public static final String ATTR_ADMINTYPE = "admintype"; + public static final String ADMIN_BACKORDER = "backorder"; + public static final String ADMIN_SUPPLIERCFG = "supplierconfig"; + public static final String ADMIN_POPULATE = "populate"; + // Servlet action codes. + // Supplier Config actions + public static final String ACTION_GETSUPPLIER = "getsupplier"; + public static final String ACTION_UPDATESUPPLIER = "updatesupplier"; + // Backorder actions + public static final String ACTION_ORDERSTOCK = "orderstock"; + public static final String ACTION_UPDATESTOCK = "updatestock"; + public static final String ACTION_GETBACKORDERS = "getbackorders"; + public static final String ACTION_UPDATEQUANTITY = "updatequantity"; + public static final String ACTION_ORDERSTATUS = "orderstatus"; + public static final String ACTION_CANCEL = "cancel"; + public static final String STATUS_ORDERSTOCK = "Order Stock"; + public static final String STATUS_ORDEREDSTOCK = "Ordered Stock"; + public static final String STATUS_RECEIVEDSTOCK = "Received Stock"; + public static final String STATUS_ADDEDSTOCK = "Added Stock"; + public static final String DEFAULT_SUPPLIERID = "Supplier"; + private static InitialContext initCtx = null; + private static final String[] CATEGORY_STRINGS = { "Flowers", "Fruits & Vegetables", "Trees", "Accessories" }; + private static final String[] SHIPPING_METHOD_STRINGS = { "Standard Ground", "Second Day Air", "Next Day Air" }; + private static final String[] SHIPPING_METHOD_TIMES = { "( 3 to 6 business days )", "( 2 to 3 business days )", "( 1 to 2 business days )" }; + private static final float[] SHIPPING_METHOD_PRICES = { 4.99f, 8.99f, 12.99f }; + public static final String ZERO_14 = "00000000000000"; + /** + * Return the cached Initial Context. + * + * @return InitialContext, or null if a naming exception. + */ + static public InitialContext getInitialContext() { + try { + // Get InitialContext if it has not been gotten yet. + if (initCtx == null) { + // properties are in the system properties + initCtx = new InitialContext(); + } + } + // Naming Exception will cause a null return. + catch (NamingException e) {} + return initCtx; + } + + /** + * Get the displayable name of a category. + * @param index The int representation of a category. + * @return The category as a String (null, if an invalid index given). + */ + static public String getCategoryString(int index) { + if ((index >= 0) && (index < CATEGORY_STRINGS.length)) + return CATEGORY_STRINGS[index]; + else + return null; + } + /** + * Get the category strings in an array. + * + * @return The category strings in an array. + */ + static public String[] getCategoryStrings() { + return CATEGORY_STRINGS; + } + /** + * Get the shipping method. + * @param index The int representation of a shipping method. + * @return The shipping method (null, if an invalid index given). + */ + static public String getShippingMethod(int index) { + if ((index >= 0) && (index < SHIPPING_METHOD_STRINGS.length)) + return SHIPPING_METHOD_STRINGS[index]; + else + return null; + } + /** + * Get the shipping method price. + * @param index The int representation of a shipping method. + * @return The shipping method price (-1, if an invalid index given). + */ + static public float getShippingMethodPrice(int index) { + if ((index >= 0) && (index < SHIPPING_METHOD_PRICES.length)) + return SHIPPING_METHOD_PRICES[index]; + else + return -1; + } + /** + * Get the shipping method price. + * @param index The int representation of a shipping method. + * @return The shipping method time (null, if an invalid index given). + */ + static public String getShippingMethodTime(int index) { + if ((index >= 0) && (index < SHIPPING_METHOD_TIMES.length)) + return SHIPPING_METHOD_TIMES[index]; + else + return null; + } + /** + * Get the shipping method strings in an array. + * @return The shipping method strings in an array. + */ + static public String[] getShippingMethodStrings() { + return SHIPPING_METHOD_STRINGS; + } + /** + * Get the shipping method strings, including prices and times, in an array. + * @return The shipping method strings, including prices and times, in an array. + */ + static public String[] getFullShippingMethodStrings() { + String[] shippingMethods = new String[SHIPPING_METHOD_STRINGS.length]; + for (int i = 0; i < shippingMethods.length; i++) { + shippingMethods[i] = SHIPPING_METHOD_STRINGS[i] + " " + SHIPPING_METHOD_TIMES[i] + " " + NumberFormat.getCurrencyInstance(java.util.Locale.US).format(new Float(SHIPPING_METHOD_PRICES[i])); + } + return shippingMethods; + } + private static final String PBW_PROPERTIES = "pbw.properties"; + private static ListProperties PBW_Properties = null; + /** + * Method readProperties. + */ + public static void readProperties() throws FileNotFoundException { + if (PBW_Properties == null) { + // Try to read the properties file. + ListProperties prop = new ListProperties(); + try { + String PBW_Properties_File = PBW_PROPERTIES; + debug("Util.readProperties(): Loading PBW Properties from file: " + PBW_Properties_File); + prop.load(Util.class.getClassLoader().getResourceAsStream(PBW_Properties_File)); + } catch (Exception e) { + debug("Util.readProperties(): Exception: " + e); + // Reset properties to retry loading next time. + PBW_Properties = null; + e.printStackTrace(); + throw new FileNotFoundException(); + } + PBW_Properties = prop; + } + } + /** + * Method getProperty. + * @param name + * @return value + */ + public static String getProperty(String name) { + String value = ""; + try { + if (PBW_Properties == null) { + readProperties(); + } + value = PBW_Properties.getProperty(name); + } catch (Exception e) { + debug("Util.getProperty(): Exception: " + e); + } + return (value); + } + /** + * Method readTokens. + * @param text + * @param token + * @return list + */ + public static String[] readTokens(String text, String token) { + StringTokenizer parser = new StringTokenizer(text, token); + int numTokens = parser.countTokens(); + String[] list = new String[numTokens]; + for (int i = 0; i < numTokens; i++) { + list[i] = parser.nextToken(); + } + return list; + } + /** + * Method getProperties. + * @param name + * @return values + */ + public static String[] getProperties(String name) { + String[] values = { "" }; + try { + if (PBW_Properties == null) { + readProperties(); + } + values = PBW_Properties.getProperties(name); + debug("Util.getProperties: property (" + name + ") -> " + values.toString()); + //for (Enumeration e = PBW_Properties.propertyNames() ; e.hasMoreElements() ;) { + // debug((String)e.nextElement()); + //} + } catch (Exception e) { + debug("Util.getProperties(): Exception: " + e); + } + return (values); + } + static private boolean debug = false; + /** Set debug setting to on or off. + * @param val True or false. + */ + static final public void setDebug(boolean val) { + debug = val; + } + /** Is debug turned on? */ + static final public boolean debugOn() { + return debug; + } + /** + * Output RAS message. + * @param msg Message to be output. + */ + static final public void debug(String msg) { + FacesContext context = FacesContext.getCurrentInstance(); + if (context != null) { + Application app = context.getApplication(); + if (app != null) { + ProjectStage stage = app.getProjectStage(); + if (stage == ProjectStage.Development || stage == ProjectStage.UnitTest) { + setDebug(true); + } + } + if (debug) { + System.out.println(msg); + } + } + } + + /** + * Utilty functions for validating user input. + * validateString will return false if any of the invalid characters appear in the input string. + * + * In general, we do not want to allow special characters in user input, + * because this can open us to a XSS security vulnerability. + * For example, a user should not be allowed to enter javascript in an input field. + */ + static final char[] invalidCharList={'|','&',';','$','%','\'','\"','\\','<','>',','}; + + public static boolean validateString(String input){ + if (input==null) return true; + for (int i=0;i backOrders = backOrderStock.findBackOrders(); + ArrayList backOrderItems = new ArrayList(); + for (BackOrder bo : backOrders) { + BackOrderItem boi = new BackOrderItem(bo); + backOrderItems.add(boi); + } + Util.debug("AdminServlet.getBackOrders() - BackOrders found!"); + Iterator i = backOrderItems.iterator(); + while (i.hasNext()) { + BackOrderItem backOrderItem = (BackOrderItem) i.next(); + String backOrderID = backOrderItem.getBackOrderID(); + String inventoryID = backOrderItem.getInventory().getInventoryId(); + // Get the inventory quantity and name for the back order item + // information. + Inventory item = catalog.getItemInventory(inventoryID); + int quantity = item.getQuantity(); + backOrderItem.setInventoryQuantity(quantity); + String name = item.getName(); + backOrderItem.setName(name); + // Don't include backorders that have been completed. + if (!(backOrderItem.getStatus().equals(Util.STATUS_ADDEDSTOCK))) { + String invID = backOrderItem.getInventory().getInventoryId(); + String supplierOrderID = backOrderItem.getSupplierOrderID(); + String status = backOrderItem.getStatus(); + String lowDate = new Long(backOrderItem.getLowDate()).toString(); + String orderDate = new Long(backOrderItem.getOrderDate()).toString(); + Util.debug("AdminServlet.getBackOrders() - backOrderID = " + backOrderID); + Util.debug("AdminServlet.getBackOrders() - supplierOrderID = " + supplierOrderID); + Util.debug("AdminServlet.getBackOrders() - invID = " + invID); + Util.debug("AdminServlet.getBackOrders() - name = " + name); + Util.debug("AdminServlet.getBackOrders() - quantity = " + quantity); + Util.debug("AdminServlet.getBackOrders() - status = " + status); + Util.debug("AdminServlet.getBackOrders() - lowDate = " + lowDate); + Util.debug("AdminServlet.getBackOrders() - orderDate = " + orderDate); + } + } + session.setAttribute("backorderitems", backOrderItems); + } catch (Exception e) { + e.printStackTrace(); + Util.debug("AdminServlet.getBackOrders() - RemoteException: " + e); + } + } + + /** + * Method sendRedirect. + * + * @param resp + * @param page + * @throws ServletException + * @throws IOException + */ + private void sendRedirect(HttpServletResponse resp, String page) throws ServletException, IOException { + resp.sendRedirect(resp.encodeRedirectURL(page)); + } + + /** + * Method requestDispatch. + * + * @param ctx + * @param req + * @param resp + * @param page + * @throws ServletException + * @throws IOException + */ + /** + * Request dispatch + */ + private void requestDispatch(ServletContext ctx, + HttpServletRequest req, + HttpServletResponse resp, + String page) throws ServletException, IOException { + resp.setContentType("text/html"); + ctx.getRequestDispatcher(page).forward(req, resp); + } +} diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/war/BackOrderItem.java b/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/war/BackOrderItem.java new file mode 100755 index 00000000..3cd15789 --- /dev/null +++ b/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/war/BackOrderItem.java @@ -0,0 +1,209 @@ +// +// COPYRIGHT LICENSE: This information contains sample code provided in source code form. You may copy, +// modify, and distribute these sample programs in any form without payment to IBM for the purposes of +// developing, using, marketing or distributing application programs conforming to the application +// programming interface for the operating platform for which the sample code is written. +// Notwithstanding anything to the contrary, IBM PROVIDES THE SAMPLE SOURCE CODE ON AN "AS IS" BASIS +// AND IBM DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, ANY IMPLIED +// WARRANTIES OR CONDITIONS OF MERCHANTABILITY, SATISFACTORY QUALITY, FITNESS FOR A PARTICULAR PURPOSE, +// TITLE, AND ANY WARRANTY OR CONDITION OF NON-INFRINGEMENT. IBM SHALL NOT BE LIABLE FOR ANY DIRECT, +// INDIRECT, INCIDENTAL, SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR OPERATION OF THE +// SAMPLE SOURCE CODE. IBM HAS NO OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS +// OR MODIFICATIONS TO THE SAMPLE SOURCE CODE. +// +// (C) COPYRIGHT International Business Machines Corp., 2003,2011 +// All Rights Reserved * Licensed Materials - Property of IBM +// +package com.ibm.websphere.samples.pbw.war; + +import com.ibm.websphere.samples.pbw.jpa.BackOrder; +import com.ibm.websphere.samples.pbw.jpa.Inventory; +import com.ibm.websphere.samples.pbw.utils.Util; + +/** + * A class to hold a back order item's data. + */ +public class BackOrderItem implements java.io.Serializable { + /** + * + */ + private static final long serialVersionUID = 1L; + private String name; + private int inventoryQuantity; + private String backOrderID; // from BackOrder + private int quantity; // from BackOrder + private String status; // from BackOrder + private long lowDate; // from BackOrder + private long orderDate; // from BackOrder + private String supplierOrderID; // from BackOrder + private Inventory inventory; // from BackOrder + + /** + * @see java.lang.Object#Object() + */ + /** Default constructor. */ + public BackOrderItem() { + } + + /** + * Method BackOrderItem. + * + * @param backOrderID + * @param inventoryID + * @param name + * @param quantity + * @param status + */ + public BackOrderItem(String backOrderID, Inventory inventoryID, String name, int quantity, String status) { + this.backOrderID = backOrderID; + this.inventory = inventoryID; + this.name = name; + this.quantity = quantity; + this.status = status; + } + + /** + * Method BackOrderItem. + * + * @param backOrder + */ + public BackOrderItem(BackOrder backOrder) { + try { + this.backOrderID = backOrder.getBackOrderID(); + this.inventory = backOrder.getInventory(); + this.quantity = backOrder.getQuantity(); + this.status = backOrder.getStatus(); + this.lowDate = backOrder.getLowDate(); + this.orderDate = backOrder.getOrderDate(); + this.supplierOrderID = backOrder.getSupplierOrderID(); + } catch (Exception e) { + Util.debug("BackOrderItem - Exception: " + e); + } + } + + /** + * Method getBackOrderID. + * + * @return String + */ + public String getBackOrderID() { + return backOrderID; + } + + /** + * Method setBackOrderID. + * + * @param backOrderID + */ + public void setBackOrderID(String backOrderID) { + this.backOrderID = backOrderID; + } + + /** + * Method getSupplierOrderID. + * + * @return String + */ + public String getSupplierOrderID() { + return supplierOrderID; + } + + /** + * Method setSupplierOrderID. + * + * @param supplierOrderID + */ + public void setSupplierOrderID(String supplierOrderID) { + this.supplierOrderID = supplierOrderID; + } + + /** + * Method setQuantity. + * + * @param quantity + */ + public void setQuantity(int quantity) { + this.quantity = quantity; + } + + /** + * Method getInventoryID. + * + * @return String + */ + public Inventory getInventory() { + return inventory; + } + + /** + * Method getName. + * + * @return String + */ + public String getName() { + return name; + } + + /** + * Method setName. + * + * @param name + */ + public void setName(String name) { + this.name = name; + } + + /** + * Method getQuantity. + * + * @return int + */ + public int getQuantity() { + return quantity; + } + + /** + * Method getInventoryQuantity. + * + * @return int + */ + public int getInventoryQuantity() { + return inventoryQuantity; + } + + /** + * Method setInventoryQuantity. + * + * @param quantity + */ + public void setInventoryQuantity(int quantity) { + this.inventoryQuantity = quantity; + } + + /** + * Method getStatus. + * + * @return String + */ + public String getStatus() { + return status; + } + + /** + * Method getLowDate. + * + * @return long + */ + public long getLowDate() { + return lowDate; + } + + /** + * Method getOrderDate. + * + * @return long + */ + public long getOrderDate() { + return orderDate; + } +} diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/war/HelpBean.java b/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/war/HelpBean.java new file mode 100755 index 00000000..da35b978 --- /dev/null +++ b/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/war/HelpBean.java @@ -0,0 +1,86 @@ +// +// COPYRIGHT LICENSE: This information contains sample code provided in source code form. You may copy, +// modify, and distribute these sample programs in any form without payment to IBM for the purposes of +// developing, using, marketing or distributing application programs conforming to the application +// programming interface for the operating platform for which the sample code is written. +// Notwithstanding anything to the contrary, IBM PROVIDES THE SAMPLE SOURCE CODE ON AN "AS IS" BASIS +// AND IBM DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, ANY IMPLIED +// WARRANTIES OR CONDITIONS OF MERCHANTABILITY, SATISFACTORY QUALITY, FITNESS FOR A PARTICULAR PURPOSE, +// TITLE, AND ANY WARRANTY OR CONDITION OF NON-INFRINGEMENT. IBM SHALL NOT BE LIABLE FOR ANY DIRECT, +// INDIRECT, INCIDENTAL, SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR OPERATION OF THE +// SAMPLE SOURCE CODE. IBM HAS NO OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS +// OR MODIFICATIONS TO THE SAMPLE SOURCE CODE. +// +// (C) COPYRIGHT International Business Machines Corp., 2011 +// All Rights Reserved * Licensed Materials - Property of IBM +// + +package com.ibm.websphere.samples.pbw.war; + +import java.io.Serializable; + +import javax.enterprise.context.Dependent; +import javax.inject.Inject; +import javax.inject.Named; + +import com.ibm.websphere.samples.pbw.bean.ResetDBBean; +import com.ibm.websphere.samples.pbw.utils.Util; + +/** + * JSF action bean for the help page. + * + */ +@Named("help") +public class HelpBean implements Serializable { + + @Inject + private ResetDBBean rdb; + + private String dbDumpFile; + + private static final String ACTION_HELP = "help"; + private static final String ACTION_HOME = "promo"; + + public String performHelp() { + return ACTION_HELP; + } + + public String performDBReset() { + rdb.resetDB(); + return ACTION_HOME; + } + + /** + * @return the dbDumpFile + */ + public String getDbDumpFile() { + return dbDumpFile; + } + + /** + * @param dbDumpFile + * the dbDumpFile to set + */ + public void setDbDumpFile(String dbDumpFile) { + this.dbDumpFile = dbDumpFile; + } + + /** + * @return whether debug is on or not + */ + public boolean isDebug() { + return Util.debugOn(); + } + + /** + * Debugging is currently tied to the JavaServer Faces project stage. Any change here is likely + * to be automatically reset. + * + * @param debug + * Sets whether debug is on or not. + */ + public void setDebug(boolean debug) { + Util.setDebug(debug); + } + +} diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/war/ImageServlet.java b/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/war/ImageServlet.java new file mode 100755 index 00000000..87ee3856 --- /dev/null +++ b/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/war/ImageServlet.java @@ -0,0 +1,104 @@ +// +// COPYRIGHT LICENSE: This information contains sample code provided in source code form. You may copy, +// modify, and distribute these sample programs in any form without payment to IBM for the purposes of +// developing, using, marketing or distributing application programs conforming to the application +// programming interface for the operating platform for which the sample code is written. +// Notwithstanding anything to the contrary, IBM PROVIDES THE SAMPLE SOURCE CODE ON AN "AS IS" BASIS +// AND IBM DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, ANY IMPLIED +// WARRANTIES OR CONDITIONS OF MERCHANTABILITY, SATISFACTORY QUALITY, FITNESS FOR A PARTICULAR PURPOSE, +// TITLE, AND ANY WARRANTY OR CONDITION OF NON-INFRINGEMENT. IBM SHALL NOT BE LIABLE FOR ANY DIRECT, +// INDIRECT, INCIDENTAL, SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR OPERATION OF THE +// SAMPLE SOURCE CODE. IBM HAS NO OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS +// OR MODIFICATIONS TO THE SAMPLE SOURCE CODE. +// +// (C) COPYRIGHT International Business Machines Corp., 2001,2011 +// All Rights Reserved * Licensed Materials - Property of IBM +// +package com.ibm.websphere.samples.pbw.war; + +import java.io.IOException; + +import javax.inject.Inject; +import javax.inject.Named; +import javax.servlet.ServletConfig; +import javax.servlet.ServletException; +import javax.servlet.annotation.WebServlet; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import com.ibm.websphere.samples.pbw.bean.CatalogMgr; +import com.ibm.websphere.samples.pbw.utils.Util; + +/** + * Servlet to handle image actions. + */ +@Named(value = "image") +@WebServlet("/servlet/ImageServlet") +public class ImageServlet extends HttpServlet { + /** + * + */ + private static final long serialVersionUID = 1L; + + @Inject + private CatalogMgr catalog; + + /** + * Servlet initialization. + */ + public void init(ServletConfig config) throws ServletException { + super.init(config); + } + + /** + * Process incoming HTTP GET requests + * + * @param request + * Object that encapsulates the request to the servlet + * @param response + * Object that encapsulates the response from the servlet + */ + public void doGet(javax.servlet.http.HttpServletRequest request, + javax.servlet.http.HttpServletResponse response) throws ServletException, IOException { + performTask(request, response); + } + + /** + * Process incoming HTTP POST requests + * + * @param request + * Object that encapsulates the request to the servlet + * @param response + * Object that encapsulates the response from the servlet + */ + public void doPost(javax.servlet.http.HttpServletRequest request, + javax.servlet.http.HttpServletResponse response) throws ServletException, IOException { + performTask(request, response); + } + + /** + * Main service method for ImageServlet + * + * @param request + * Object that encapsulates the request to the servlet + * @param response + * Object that encapsulates the response from the servlet + */ + private void performTask(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { + String action = null; + + action = req.getParameter("action"); + Util.debug("action=" + action); + + if (action.equals("getimage")) { + String inventoryID = req.getParameter("inventoryID"); + + byte[] buf = catalog.getItemImageBytes(inventoryID); + if (buf != null) { + resp.setContentType("image/jpeg"); + resp.getOutputStream().write(buf); + } + } + } +} \ No newline at end of file diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/war/LoginInfo.java b/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/war/LoginInfo.java new file mode 100755 index 00000000..41d6a0ae --- /dev/null +++ b/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/war/LoginInfo.java @@ -0,0 +1,72 @@ +// +// COPYRIGHT LICENSE: This information contains sample code provided in source code form. You may copy, +// modify, and distribute these sample programs in any form without payment to IBM for the purposes of +// developing, using, marketing or distributing application programs conforming to the application +// programming interface for the operating platform for which the sample code is written. +// Notwithstanding anything to the contrary, IBM PROVIDES THE SAMPLE SOURCE CODE ON AN "AS IS" BASIS +// AND IBM DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, ANY IMPLIED +// WARRANTIES OR CONDITIONS OF MERCHANTABILITY, SATISFACTORY QUALITY, FITNESS FOR A PARTICULAR PURPOSE, +// TITLE, AND ANY WARRANTY OR CONDITION OF NON-INFRINGEMENT. IBM SHALL NOT BE LIABLE FOR ANY DIRECT, +// INDIRECT, INCIDENTAL, SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR OPERATION OF THE +// SAMPLE SOURCE CODE. IBM HAS NO OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS +// OR MODIFICATIONS TO THE SAMPLE SOURCE CODE. +// +// (C) COPYRIGHT International Business Machines Corp., 2003,2011 +// All Rights Reserved * Licensed Materials - Property of IBM +// + +package com.ibm.websphere.samples.pbw.war; + +import javax.validation.constraints.Pattern; +import javax.validation.constraints.Size; + +/** + * A JSF backing bean used to store information for the login web page. It is accessed via the + * account bean. + * + */ +public class LoginInfo { + private String checkPassword; + + @Pattern(regexp = "[a-zA-Z0-9_-]+@[a-zA-Z0-9.-]+") + private String email; + private String message; + + @Size(min = 6, max = 10, message = "Password must be between 6 and 10 characters.") + private String password; + + public LoginInfo() { + } + + public String getCheckPassword() { + return this.checkPassword; + } + + public String getEmail() { + return this.email; + } + + public String getMessage() { + return this.message; + } + + public String getPassword() { + return this.password; + } + + public void setCheckPassword(String checkPassword) { + this.checkPassword = checkPassword; + } + + public void setEmail(String email) { + this.email = email; + } + + public void setMessage(String message) { + this.message = message; + } + + public void setPassword(String password) { + this.password = password; + } +} diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/war/MailAction.java b/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/war/MailAction.java new file mode 100755 index 00000000..44457ac1 --- /dev/null +++ b/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/war/MailAction.java @@ -0,0 +1,64 @@ +// +// COPYRIGHT LICENSE: This information contains sample code provided in source code form. You may copy, +// modify, and distribute these sample programs in any form without payment to IBM for the purposes of +// developing, using, marketing or distributing application programs conforming to the application +// programming interface for the operating platform for which the sample code is written. +// Notwithstanding anything to the contrary, IBM PROVIDES THE SAMPLE SOURCE CODE ON AN "AS IS" BASIS +// AND IBM DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, ANY IMPLIED +// WARRANTIES OR CONDITIONS OF MERCHANTABILITY, SATISFACTORY QUALITY, FITNESS FOR A PARTICULAR PURPOSE, +// TITLE, AND ANY WARRANTY OR CONDITION OF NON-INFRINGEMENT. IBM SHALL NOT BE LIABLE FOR ANY DIRECT, +// INDIRECT, INCIDENTAL, SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR OPERATION OF THE +// SAMPLE SOURCE CODE. IBM HAS NO OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS +// OR MODIFICATIONS TO THE SAMPLE SOURCE CODE. +// +// (C) COPYRIGHT International Business Machines Corp., 2001,2011 +// All Rights Reserved * Licensed Materials - Property of IBM +// +package com.ibm.websphere.samples.pbw.war; + +import javax.inject.Inject; +import javax.inject.Named; + +import com.ibm.websphere.samples.pbw.bean.MailerAppException; +import com.ibm.websphere.samples.pbw.bean.MailerBean; +import com.ibm.websphere.samples.pbw.jpa.Customer; +import com.ibm.websphere.samples.pbw.utils.Util; + +/** + * This class sends the email confirmation message. + */ +@Named("mailaction") +public class MailAction implements java.io.Serializable { + /** + * + */ + private static final long serialVersionUID = 1L; + + @Inject + private MailerBean mailer; + + /** Public constructor */ + public MailAction() { + } + + /** + * Send the email order confirmation message. + * + * @param customer + * The customer information. + * @param orderKey + * The order number. + */ + public final void sendConfirmationMessage(Customer customer, + String orderKey) { + try { + System.out.println("mailer=" + mailer); + mailer.createAndSendMail(customer, orderKey); + } + // The MailerAppException will be ignored since mail may not be configured. + catch (MailerAppException e) { + Util.debug("Mailer threw exception, mail may not be configured. Exception:" + e); + } + } + +} diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/war/OrderInfo.java b/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/war/OrderInfo.java new file mode 100755 index 00000000..e069b745 --- /dev/null +++ b/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/war/OrderInfo.java @@ -0,0 +1,519 @@ +// +// COPYRIGHT LICENSE: This information contains sample code provided in source code form. You may copy, +// modify, and distribute these sample programs in any form without payment to IBM for the purposes of +// developing, using, marketing or distributing application programs conforming to the application +// programming interface for the operating platform for which the sample code is written. +// Notwithstanding anything to the contrary, IBM PROVIDES THE SAMPLE SOURCE CODE ON AN "AS IS" BASIS +// AND IBM DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, ANY IMPLIED +// WARRANTIES OR CONDITIONS OF MERCHANTABILITY, SATISFACTORY QUALITY, FITNESS FOR A PARTICULAR PURPOSE, +// TITLE, AND ANY WARRANTY OR CONDITION OF NON-INFRINGEMENT. IBM SHALL NOT BE LIABLE FOR ANY DIRECT, +// INDIRECT, INCIDENTAL, SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR OPERATION OF THE +// SAMPLE SOURCE CODE. IBM HAS NO OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS +// OR MODIFICATIONS TO THE SAMPLE SOURCE CODE. +// +// (C) COPYRIGHT International Business Machines Corp., 2001,2011 +// All Rights Reserved * Licensed Materials - Property of IBM +// +package com.ibm.websphere.samples.pbw.war; + +import java.util.Calendar; + +import javax.validation.constraints.NotNull; +import javax.validation.constraints.Pattern; +import javax.validation.constraints.Size; + +import com.ibm.websphere.samples.pbw.jpa.Order; +import com.ibm.websphere.samples.pbw.utils.Util; + +/** + * A class to hold an order's data. + */ +public class OrderInfo implements java.io.Serializable { + private static final long serialVersionUID = 1L; + private String orderID; + @NotNull + @Size(min = 1, message = "Name for billing must include at least one letter.") + private String billName; + @NotNull + @Size(min = 1, message = "Billing address must include at least one letter.") + private String billAddr1; + private String billAddr2; + @NotNull + @Size(min = 1, message = "Billing city must include at least one letter.") + private String billCity; + @NotNull + @Size(min = 1, message = "Billing state must include at least one letter.") + private String billState; + + @Pattern(regexp = "\\d{5}", message = "Billing zip code does not have 5 digits.") + private String billZip; + + @Pattern(regexp = "\\d{3}-\\d{3}-\\d{4}", message = "Billing phone number does not match xxx-xxx-xxxx.") + private String billPhone; + @NotNull + @Size(min = 1, message = "Name for shipping must include at least one letter.") + private String shipName; + @NotNull + @Size(min = 1, message = "Shipping address must include at least one letter.") + private String shipAddr1; + private String shipAddr2; + @NotNull + @Size(min = 1, message = "Shipping city must include at least one letter.") + private String shipCity; + @NotNull + @Size(min = 1, message = "Shipping state must include at least one letter.") + private String shipState; + + @Pattern(regexp = "[0-9][0-9][0-9][0-9][0-9]", message = "Shipping zip code does not have 5 digits.") + private String shipZip; + + @Pattern(regexp = "\\d{3}-\\d{3}-\\d{4}", message = "Shipping phone number does not match xxx-xxx-xxxx.") + private String shipPhone; + private int shippingMethod; + @NotNull + @Size(min = 1, message = "Card holder name must include at least one letter.") + private String cardholderName; + private String cardName; + + @Pattern(regexp = "\\d{4} \\d{4} \\d{4} \\d{4}", message = "Credit card numbers must be entered as XXXX XXXX XXXX XXXX.") + private String cardNum; + private String cardExpMonth; + private String cardExpYear; + private String[] cardExpYears; + private boolean shipisbill = false; + + /** + * Constructor to create an OrderInfo by passing each field. + */ + public OrderInfo(String billName, String billAddr1, String billAddr2, String billCity, String billState, + String billZip, String billPhone, String shipName, String shipAddr1, String shipAddr2, String shipCity, + String shipState, String shipZip, String shipPhone, int shippingMethod, String orderID) { + this.orderID = orderID; + this.billName = billName; + this.billAddr1 = billAddr1; + this.billAddr2 = billAddr2; + this.billCity = billCity; + this.billState = billState; + this.billZip = billZip; + this.billPhone = billPhone; + this.shipName = shipName; + this.shipAddr1 = shipAddr1; + this.shipAddr2 = shipAddr2; + this.shipCity = shipCity; + this.shipState = shipState; + this.shipZip = shipZip; + this.shipPhone = shipPhone; + this.shippingMethod = shippingMethod; + initLists(); + cardholderName = ""; + cardNum = ""; + } + + /** + * Constructor to create an OrderInfo using an Order. + * + * @param order + */ + public OrderInfo(Order order) { + orderID = order.getOrderID(); + billName = order.getBillName(); + billAddr1 = order.getBillAddr1(); + billAddr2 = order.getBillAddr2(); + billCity = order.getBillCity(); + billState = order.getBillState(); + billZip = order.getBillZip(); + billPhone = order.getBillPhone(); + shipName = order.getShipName(); + shipAddr1 = order.getShipAddr1(); + shipAddr2 = order.getShipAddr2(); + shipCity = order.getShipCity(); + shipState = order.getShipState(); + shipZip = order.getShipZip(); + shipPhone = order.getShipPhone(); + shippingMethod = order.getShippingMethod(); + } + + /** + * Get the shipping method name. + */ + public String getShippingMethodName() { + return getShippingMethods()[shippingMethod]; + } + + /** + * Set the shipping method by name + */ + public void setShippingMethodName(String name) { + String[] methodNames = Util.getShippingMethodStrings(); + for (int i = 0; i < methodNames.length; i++) { + if (methodNames[i].equals(name)) + shippingMethod = i; + } + } + + /** + * Get shipping methods that are possible. + * + * @return String[] of method names + */ + public String[] getShippingMethods() { + return Util.getFullShippingMethodStrings(); + } + + public int getShippingMethodCount() { + return Util.getShippingMethodStrings().length; + } + + private void initLists() { + int i = Calendar.getInstance().get(1); + cardExpYears = new String[5]; + for (int j = 0; j < 5; j++) + cardExpYears[j] = (new Integer(i + j)).toString(); + } + + /** + * @return the orderID + */ + public String getID() { + return orderID; + } + + /** + * @param orderID + * the orderID to set + */ + public void setID(String orderID) { + this.orderID = orderID; + } + + /** + * @return the billName + */ + public String getBillName() { + return billName; + } + + /** + * @param billName + * the billName to set + */ + public void setBillName(String billName) { + this.billName = billName; + } + + /** + * @return the billAddr1 + */ + public String getBillAddr1() { + return billAddr1; + } + + /** + * @param billAddr1 + * the billAddr1 to set + */ + public void setBillAddr1(String billAddr1) { + this.billAddr1 = billAddr1; + } + + /** + * @return the billAddr2 + */ + public String getBillAddr2() { + return billAddr2; + } + + /** + * @param billAddr2 + * the billAddr2 to set + */ + public void setBillAddr2(String billAddr2) { + this.billAddr2 = billAddr2; + } + + /** + * @return the billCity + */ + public String getBillCity() { + return billCity; + } + + /** + * @param billCity + * the billCity to set + */ + public void setBillCity(String billCity) { + this.billCity = billCity; + } + + /** + * @return the billState + */ + public String getBillState() { + return billState; + } + + /** + * @param billState + * the billState to set + */ + public void setBillState(String billState) { + this.billState = billState; + } + + /** + * @return the billZip + */ + public String getBillZip() { + return billZip; + } + + /** + * @param billZip + * the billZip to set + */ + public void setBillZip(String billZip) { + this.billZip = billZip; + } + + /** + * @return the billPhone + */ + public String getBillPhone() { + return billPhone; + } + + /** + * @param billPhone + * the billPhone to set + */ + public void setBillPhone(String billPhone) { + this.billPhone = billPhone; + } + + /** + * @return the shipName + */ + public String getShipName() { + return shipName; + } + + /** + * @param shipName + * the shipName to set + */ + public void setShipName(String shipName) { + this.shipName = shipName; + } + + /** + * @return the shipAddr1 + */ + public String getShipAddr1() { + return shipAddr1; + } + + /** + * @param shipAddr1 + * the shipAddr1 to set + */ + public void setShipAddr1(String shipAddr1) { + this.shipAddr1 = shipAddr1; + } + + /** + * @return the shipAddr2 + */ + public String getShipAddr2() { + return shipAddr2; + } + + /** + * @param shipAddr2 + * the shipAddr2 to set + */ + public void setShipAddr2(String shipAddr2) { + this.shipAddr2 = shipAddr2; + } + + /** + * @return the shipCity + */ + public String getShipCity() { + return shipCity; + } + + /** + * @param shipCity + * the shipCity to set + */ + public void setShipCity(String shipCity) { + this.shipCity = shipCity; + } + + /** + * @return the shipState + */ + public String getShipState() { + return shipState; + } + + /** + * @param shipState + * the shipState to set + */ + public void setShipState(String shipState) { + this.shipState = shipState; + } + + /** + * @return the shipZip + */ + public String getShipZip() { + return shipZip; + } + + /** + * @param shipZip + * the shipZip to set + */ + public void setShipZip(String shipZip) { + this.shipZip = shipZip; + } + + /** + * @return the shipPhone + */ + public String getShipPhone() { + return shipPhone; + } + + /** + * @param shipPhone + * the shipPhone to set + */ + public void setShipPhone(String shipPhone) { + this.shipPhone = shipPhone; + } + + /** + * @return the shippingMethod + */ + public int getShippingMethod() { + return shippingMethod; + } + + /** + * @param shippingMethod + * the shippingMethod to set + */ + public void setShippingMethod(int shippingMethod) { + this.shippingMethod = shippingMethod; + } + + /** + * @return the cardholderName + */ + public String getCardholderName() { + return cardholderName; + } + + /** + * @param cardholderName + * the cardholderName to set + */ + public void setCardholderName(String cardholderName) { + this.cardholderName = cardholderName; + } + + /** + * @return the cardName + */ + public String getCardName() { + return cardName; + } + + /** + * @param cardName + * the cardName to set + */ + public void setCardName(String cardName) { + this.cardName = cardName; + } + + /** + * @return the cardNum + */ + public String getCardNum() { + return cardNum; + } + + /** + * @param cardNum + * the cardNum to set + */ + public void setCardNum(String cardNum) { + this.cardNum = cardNum; + } + + /** + * @return the cardExpMonth + */ + public String getCardExpMonth() { + return cardExpMonth; + } + + /** + * @param cardExpMonth + * the cardExpMonth to set + */ + public void setCardExpMonth(String cardExpMonth) { + this.cardExpMonth = cardExpMonth; + } + + /** + * @return the cardExpYear + */ + public String getCardExpYear() { + return cardExpYear; + } + + /** + * @param cardExpYear + * the cardExpYear to set + */ + public void setCardExpYear(String cardExpYear) { + this.cardExpYear = cardExpYear; + } + + /** + * @return the cardExpYears + */ + public String[] getCardExpYears() { + return cardExpYears; + } + + /** + * @param cardExpYears + * the cardExpYears to set + */ + public void setCardExpYears(String[] cardExpYears) { + this.cardExpYears = cardExpYears; + } + + /** + * @return the shipisbill + */ + public boolean isShipisbill() { + return shipisbill; + } + + /** + * @param shipisbill + * the shipisbill to set + */ + public void setShipisbill(boolean shipisbill) { + this.shipisbill = shipisbill; + } + +} diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/war/Populate.java b/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/war/Populate.java new file mode 100755 index 00000000..93b14a92 --- /dev/null +++ b/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/war/Populate.java @@ -0,0 +1,303 @@ +// +// COPYRIGHT LICENSE: This information contains sample code provided in source code form. You may copy, +// modify, and distribute these sample programs in any form without payment to IBM for the purposes of +// developing, using, marketing or distributing application programs conforming to the application +// programming interface for the operating platform for which the sample code is written. +// Notwithstanding anything to the contrary, IBM PROVIDES THE SAMPLE SOURCE CODE ON AN "AS IS" BASIS +// AND IBM DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, ANY IMPLIED +// WARRANTIES OR CONDITIONS OF MERCHANTABILITY, SATISFACTORY QUALITY, FITNESS FOR A PARTICULAR PURPOSE, +// TITLE, AND ANY WARRANTY OR CONDITION OF NON-INFRINGEMENT. IBM SHALL NOT BE LIABLE FOR ANY DIRECT, +// INDIRECT, INCIDENTAL, SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR OPERATION OF THE +// SAMPLE SOURCE CODE. IBM HAS NO OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS +// OR MODIFICATIONS TO THE SAMPLE SOURCE CODE. +// +// (C) COPYRIGHT International Business Machines Corp., 2004,2011 +// All Rights Reserved * Licensed Materials - Property of IBM +// +package com.ibm.websphere.samples.pbw.war; + +import java.io.DataInputStream; +import java.io.File; +import java.io.FileInputStream; +import java.io.FileNotFoundException; +import java.io.IOException; +import java.net.URL; +import java.util.Vector; + +import com.ibm.websphere.samples.pbw.bean.BackOrderMgr; +import com.ibm.websphere.samples.pbw.bean.CatalogMgr; +import com.ibm.websphere.samples.pbw.bean.CustomerMgr; +import com.ibm.websphere.samples.pbw.bean.ResetDBBean; +import com.ibm.websphere.samples.pbw.bean.ShoppingCartBean; +import com.ibm.websphere.samples.pbw.bean.SuppliersBean; +import com.ibm.websphere.samples.pbw.jpa.Inventory; +import com.ibm.websphere.samples.pbw.utils.Util; + +/** + * A basic POJO class for resetting the database. + */ +public class Populate { + + private ResetDBBean resetDB; + + private CatalogMgr catalog; + + private CustomerMgr login; + + private ShoppingCartBean cart; + + private BackOrderMgr backOrderStock; + + private SuppliersBean suppliers; + + /** + * + */ + public Populate() { + } + + public Populate(ResetDBBean resetDB, CatalogMgr c, CustomerMgr l, BackOrderMgr b, SuppliersBean s) { + this.resetDB = resetDB; + this.catalog = c; + this.login = l; + this.backOrderStock = b; + this.suppliers = s; + } + + /** + * @param itemID + * @param fileName + * @param catalog + * @throws FileNotFoundException + * @throws IOException + */ + public static void addImage(String itemID, + String fileName, + CatalogMgr catalog) throws FileNotFoundException, IOException { + URL url = Thread.currentThread().getContextClassLoader().getResource("resources/images/" + fileName); + Util.debug("URL: " + url); + fileName = url.getPath(); + Util.debug("Fully-qualified Filename: " + fileName); + File imgFile = new File(fileName); + // Open the input file as a stream of bytes + FileInputStream fis = new FileInputStream(imgFile); + DataInputStream dis = new DataInputStream(fis); + int dataSize = dis.available(); + byte[] data = new byte[dataSize]; + dis.readFully(data); + catalog.setItemImageBytes(itemID, data); + } + + /** + * + */ + public void doPopulate() { + try { + resetDB.deleteAll(); + } catch (Exception e) { + Util.debug("Populate:doPopulate() - Exception deleting data in database: " + e); + e.printStackTrace(); + } + /** + * Populate INVENTORY table with text + */ + Util.debug("Populating INVENTORY table with text..."); + try { + String[] values = Util.getProperties("inventory"); + for (int index = 0; index < values.length; index++) { + Util.debug("Found INVENTORY property values: " + values[index]); + String[] fields = Util.readTokens(values[index], "|"); + String id = fields[0]; + String name = fields[1]; + String heading = fields[2]; + String descr = fields[3]; + String pkginfo = fields[4]; + String image = fields[5]; + float price = new Float(fields[6]).floatValue(); + float cost = new Float(fields[7]).floatValue(); + int quantity = new Integer(fields[8]).intValue(); + int category = new Integer(fields[9]).intValue(); + String notes = fields[10]; + boolean isPublic = new Boolean(fields[11]).booleanValue(); + Util.debug("Populating INVENTORY with following values: "); + Util.debug(fields[0]); + Util.debug(fields[1]); + Util.debug(fields[2]); + Util.debug(fields[3]); + Util.debug(fields[4]); + Util.debug(fields[5]); + Util.debug(fields[6]); + Util.debug(fields[7]); + Util.debug(fields[8]); + Util.debug(fields[9]); + Util.debug(fields[10]); + Util.debug(fields[11]); + Inventory storeItem = new Inventory(id, name, heading, descr, pkginfo, image, price, cost, quantity, + category, notes, isPublic); + catalog.addItem(storeItem); + addImage(id, image, catalog); + } + Util.debug("INVENTORY table populated with text..."); + } catch (Exception e) { + Util.debug("Unable to populate INVENTORY table with text data: " + e); + } + /** + * Populate CUSTOMER table with text + */ + Util.debug("Populating CUSTOMER table with default values..."); + try { + String[] values = Util.getProperties("customer"); + Util.debug("Found CUSTOMER properties: " + values[0]); + for (int index = 0; index < values.length; index++) { + String[] fields = Util.readTokens(values[index], "|"); + String customerID = fields[0]; + String password = fields[1]; + String firstName = fields[2]; + String lastName = fields[3]; + String addr1 = fields[4]; + String addr2 = fields[5]; + String addrCity = fields[6]; + String addrState = fields[7]; + String addrZip = fields[8]; + String phone = fields[9]; + Util.debug("Populating CUSTOMER with following values: "); + Util.debug(fields[0]); + Util.debug(fields[1]); + Util.debug(fields[2]); + Util.debug(fields[3]); + Util.debug(fields[4]); + Util.debug(fields[5]); + Util.debug(fields[6]); + Util.debug(fields[7]); + Util.debug(fields[8]); + Util.debug(fields[9]); + login.createCustomer(customerID, password, firstName, lastName, addr1, addr2, addrCity, addrState, addrZip, phone); + } + } catch (Exception e) { + Util.debug("Unable to populate CUSTOMER table with text data: " + e); + } + /** + * Populate ORDER table with text + */ + Util.debug("Populating ORDER table with default values..."); + try { + String[] values = Util.getProperties("order"); + Util.debug("Found ORDER properties: " + values[0]); + if (values[0] != null && values.length > 0) { + for (int index = 0; index < values.length; index++) { + String[] fields = Util.readTokens(values[index], "|"); + if (fields != null && fields.length >= 21) { + String customerID = fields[0]; + String billName = fields[1]; + String billAddr1 = fields[2]; + String billAddr2 = fields[3]; + String billCity = fields[4]; + String billState = fields[5]; + String billZip = fields[6]; + String billPhone = fields[7]; + String shipName = fields[8]; + String shipAddr1 = fields[9]; + String shipAddr2 = fields[10]; + String shipCity = fields[11]; + String shipState = fields[12]; + String shipZip = fields[13]; + String shipPhone = fields[14]; + int shippingMethod = Integer.parseInt(fields[15]); + String creditCard = fields[16]; + String ccNum = fields[17]; + String ccExpireMonth = fields[18]; + String ccExpireYear = fields[19]; + String cardHolder = fields[20]; + Vector items = new Vector(); + Util.debug("Populating ORDER with following values: "); + Util.debug(fields[0]); + Util.debug(fields[1]); + Util.debug(fields[2]); + Util.debug(fields[3]); + Util.debug(fields[4]); + Util.debug(fields[5]); + Util.debug(fields[6]); + Util.debug(fields[7]); + Util.debug(fields[8]); + Util.debug(fields[9]); + Util.debug(fields[10]); + Util.debug(fields[11]); + Util.debug(fields[12]); + Util.debug(fields[13]); + Util.debug(fields[14]); + Util.debug(fields[15]); + Util.debug(fields[16]); + Util.debug(fields[17]); + Util.debug(fields[18]); + Util.debug(fields[19]); + Util.debug(fields[20]); + cart.createOrder(customerID, billName, billAddr1, billAddr2, billCity, billState, billZip, billPhone, shipName, shipAddr1, shipAddr2, shipCity, shipState, shipZip, shipPhone, creditCard, ccNum, ccExpireMonth, ccExpireYear, cardHolder, shippingMethod, items); + } else { + Util.debug("Property does not contain enough fields: " + values[index]); + Util.debug("Fields found were: " + fields); + } + } + } + // stmt.executeUpdate(" INSERT INTO ORDERITEM(INVENTORYID, NAME, PKGINFO, PRICE, COST, + // CATEGORY, QUANTITY, SELLDATE, ORDER_ORDERID) VALUES ('A0001', 'Bulb Digger', + // 'Assembled', 12.0, 5.0, 3, 900, '01054835419625', '1')"); + } catch (Exception e) { + Util.debug("Unable to populate ORDERITEM table with text data: " + e); + e.printStackTrace(); + } + /** + * Populate BACKORDER table with text + */ + Util.debug("Populating BACKORDER table with default values..."); + try { + String[] values = Util.getProperties("backorder"); + Util.debug("Found BACKORDER properties: " + values[0]); + // Inserting backorders + for (int index = 0; index < values.length; index++) { + String[] fields = Util.readTokens(values[index], "|"); + String inventoryID = fields[0]; + int amountToOrder = new Integer(fields[1]).intValue(); + int maximumItems = new Integer(fields[2]).intValue(); + Util.debug("Populating BACKORDER with following values: "); + Util.debug(inventoryID); + Util.debug("amountToOrder -> " + amountToOrder); + Util.debug("maximumItems -> " + maximumItems); + backOrderStock.createBackOrder(inventoryID, amountToOrder, maximumItems); + } + } catch (Exception e) { + Util.debug("Unable to populate BACKORDER table with text data: " + e); + } + /** + * Populate SUPPLIER table with text + */ + Util.debug("Populating SUPPLIER table with default values..."); + try { + String[] values = Util.getProperties("supplier"); + Util.debug("Found SUPPLIER properties: " + values[0]); + // Inserting Suppliers + for (int index = 0; index < values.length; index++) { + String[] fields = Util.readTokens(values[index], "|"); + String supplierID = fields[0]; + String name = fields[1]; + String address = fields[2]; + String city = fields[3]; + String state = fields[4]; + String zip = fields[5]; + String phone = fields[6]; + String url = fields[7]; + Util.debug("Populating SUPPLIER with following values: "); + Util.debug(fields[0]); + Util.debug(fields[1]); + Util.debug(fields[2]); + Util.debug(fields[3]); + Util.debug(fields[4]); + Util.debug(fields[5]); + Util.debug(fields[6]); + Util.debug(fields[7]); + suppliers.createSupplier(supplierID, name, address, city, state, zip, phone, url); + } + } catch (Exception e) { + Util.debug("Unable to populate SUPPLIER table with text data: " + e); + } + } +} diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/war/ProductBean.java b/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/war/ProductBean.java new file mode 100755 index 00000000..854c2d06 --- /dev/null +++ b/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/war/ProductBean.java @@ -0,0 +1,82 @@ +// +// COPYRIGHT LICENSE: This information contains sample code provided in source code form. You may copy, +// modify, and distribute these sample programs in any form without payment to IBM for the purposes of +// developing, using, marketing or distributing application programs conforming to the application +// programming interface for the operating platform for which the sample code is written. +// Notwithstanding anything to the contrary, IBM PROVIDES THE SAMPLE SOURCE CODE ON AN "AS IS" BASIS +// AND IBM DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, ANY IMPLIED +// WARRANTIES OR CONDITIONS OF MERCHANTABILITY, SATISFACTORY QUALITY, FITNESS FOR A PARTICULAR PURPOSE, +// TITLE, AND ANY WARRANTY OR CONDITION OF NON-INFRINGEMENT. IBM SHALL NOT BE LIABLE FOR ANY DIRECT, +// INDIRECT, INCIDENTAL, SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR OPERATION OF THE +// SAMPLE SOURCE CODE. IBM HAS NO OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS +// OR MODIFICATIONS TO THE SAMPLE SOURCE CODE. +// +// (C) COPYRIGHT International Business Machines Corp., 2001,2011 +// All Rights Reserved * Licensed Materials - Property of IBM +// + +package com.ibm.websphere.samples.pbw.war; + +import java.io.Serializable; +import java.text.NumberFormat; +import java.util.Locale; +import java.util.Objects; + +import com.ibm.websphere.samples.pbw.jpa.Inventory; +import com.ibm.websphere.samples.pbw.utils.Util; + +/** + * Provides backing bean support for the product web page. Accessed via the shopping bean. + * + */ +public class ProductBean implements Serializable { + private static final long serialVersionUID = 1L; + private Inventory inventory; + private int quantity; + + protected ProductBean(Inventory inventory) { + Objects.requireNonNull(inventory, "Inventory cannot be null"); + this.inventory = inventory; + this.quantity = 1; + } + + public String getCategoryName() { + return Util.getCategoryString(this.inventory.getCategory()); + } + + public Inventory getInventory() { + return this.inventory; + } + + public String getMenuString() { + String categoryString = getCategoryName(); + + if (categoryString.equals("Flowers")) { + return "banner:menu1"; + } + + else if (categoryString.equals("Fruits & Vegetables")) { + return "banner:menu2"; + } + + else if (categoryString.equals("Trees")) { + return "banner:menu3"; + } + + else { + return "banner:menu4"; + } + } + + public String getPrice() { + return NumberFormat.getCurrencyInstance(Locale.US).format(new Float(this.inventory.getPrice())); + } + + public int getQuantity() { + return this.quantity; + } + + public void setQuantity(int quantity) { + this.quantity = quantity; + } +} diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/war/ShoppingBean.java b/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/war/ShoppingBean.java new file mode 100755 index 00000000..c1abb847 --- /dev/null +++ b/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/war/ShoppingBean.java @@ -0,0 +1,181 @@ +// +// COPYRIGHT LICENSE: This information contains sample code provided in source code form. You may copy, +// modify, and distribute these sample programs in any form without payment to IBM for the purposes of +// developing, using, marketing or distributing application programs conforming to the application +// programming interface for the operating platform for which the sample code is written. +// Notwithstanding anything to the contrary, IBM PROVIDES THE SAMPLE SOURCE CODE ON AN "AS IS" BASIS +// AND IBM DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, ANY IMPLIED +// WARRANTIES OR CONDITIONS OF MERCHANTABILITY, SATISFACTORY QUALITY, FITNESS FOR A PARTICULAR PURPOSE, +// TITLE, AND ANY WARRANTY OR CONDITION OF NON-INFRINGEMENT. IBM SHALL NOT BE LIABLE FOR ANY DIRECT, +// INDIRECT, INCIDENTAL, SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR OPERATION OF THE +// SAMPLE SOURCE CODE. IBM HAS NO OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS +// OR MODIFICATIONS TO THE SAMPLE SOURCE CODE. +// +// (C) COPYRIGHT International Business Machines Corp., 2001,2011 +// All Rights Reserved * Licensed Materials - Property of IBM +// +package com.ibm.websphere.samples.pbw.war; + +import java.io.Serializable; +import java.text.NumberFormat; +import java.util.ArrayList; +import java.util.Collection; +import java.util.LinkedList; +import java.util.Locale; +import java.util.Map; +import java.util.Vector; + +import javax.enterprise.context.SessionScoped; +import javax.faces.context.ExternalContext; +import javax.faces.context.FacesContext; +import javax.inject.Inject; +import javax.inject.Named; + +import com.ibm.websphere.samples.pbw.bean.CatalogMgr; +import com.ibm.websphere.samples.pbw.bean.ShoppingCartBean; +import com.ibm.websphere.samples.pbw.jpa.Inventory; + +/** + * A combination JSF action bean and backing bean for the shopping web page. + * + */ +@Named(value = "shopping") +@SessionScoped +public class ShoppingBean implements Serializable { + private static final long serialVersionUID = 1L; + private static final String ACTION_CART = "cart"; + private static final String ACTION_PRODUCT = "product"; + private static final String ACTION_SHOPPING = "shopping"; + + // keep an independent list of items so we can add pricing methods + private ArrayList cartItems; + + @Inject + private CatalogMgr catalog; + + private ProductBean product; + private LinkedList products; + private float shippingCost; + + @Inject + private ShoppingCartBean shoppingCart; + + public String performAddToCart() { + Inventory item = new Inventory(this.product.getInventory()); + + item.setQuantity(this.product.getQuantity()); + + shoppingCart.addItem(item); + + return performCart(); + } + + public String performCart() { + cartItems = wrapInventoryItems(shoppingCart.getItems()); + + return ShoppingBean.ACTION_CART; + } + + public String performProductDetail() { + FacesContext facesContext = FacesContext.getCurrentInstance(); + ExternalContext externalContext = facesContext.getExternalContext(); + Map requestParams = externalContext.getRequestParameterMap(); + + this.product = new ProductBean(this.catalog.getItemInventory(requestParams.get("itemID"))); + + return ShoppingBean.ACTION_PRODUCT; + } + + public String performRecalculate() { + + shoppingCart.removeZeroQuantityItems(); + + this.cartItems = wrapInventoryItems(shoppingCart.getItems()); + + return performCart(); + } + + public String performShopping() { + int category = 0; + FacesContext facesContext = FacesContext.getCurrentInstance(); + ExternalContext externalContext = facesContext.getExternalContext(); + Vector inventories; + Map requestParams = externalContext.getRequestParameterMap(); + + try { + category = Integer.parseInt(requestParams.get("category")); + } + + catch (Throwable e) { + if (this.products != null) { + // No category specified, so just use the last one. + + return ShoppingBean.ACTION_SHOPPING; + } + } + + inventories = this.catalog.getItemsByCategory(category); + + this.products = new LinkedList(); + + // Have to convert all the inventory objects into product beans. + + for (Object obj : inventories) { + Inventory inventory = (Inventory) obj; + + if (inventory.isPublic()) { + this.products.add(new ProductBean(inventory)); + } + } + + return ShoppingBean.ACTION_SHOPPING; + } + + public Collection getCartItems() { + return this.cartItems; + } + + public ProductBean getProduct() { + return this.product; + } + + public Collection getProducts() { + return this.products; + } + + public String getShippingCostString() { + return NumberFormat.getCurrencyInstance(Locale.US).format(this.shippingCost); + } + + /** + * @return the shippingCost + */ + public float getShippingCost() { + return shippingCost; + } + + public void setShippingCost(float shippingCost) { + this.shippingCost = shippingCost; + + } + + public float getTotalCost() { + return shoppingCart.getSubtotalCost() + this.shippingCost; + } + + public String getTotalCostString() { + return NumberFormat.getCurrencyInstance(Locale.US).format(getTotalCost()); + } + + public ShoppingCartBean getCart() { + return shoppingCart; + } + + private ArrayList wrapInventoryItems(Collection invItems) { + ArrayList shoppingList = new ArrayList(); + for (Inventory i : invItems) { + shoppingList.add(new ShoppingItem(i)); + } + return shoppingList; + } +} diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/war/ShoppingItem.java b/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/war/ShoppingItem.java new file mode 100755 index 00000000..a860e811 --- /dev/null +++ b/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/war/ShoppingItem.java @@ -0,0 +1,374 @@ +// +// COPYRIGHT LICENSE: This information contains sample code provided in source code form. You may copy, +// modify, and distribute these sample programs in any form without payment to IBM for the purposes of +// developing, using, marketing or distributing application programs conforming to the application +// programming interface for the operating platform for which the sample code is written. +// Notwithstanding anything to the contrary, IBM PROVIDES THE SAMPLE SOURCE CODE ON AN "AS IS" BASIS +// AND IBM DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, ANY IMPLIED +// WARRANTIES OR CONDITIONS OF MERCHANTABILITY, SATISFACTORY QUALITY, FITNESS FOR A PARTICULAR PURPOSE, +// TITLE, AND ANY WARRANTY OR CONDITION OF NON-INFRINGEMENT. IBM SHALL NOT BE LIABLE FOR ANY DIRECT, +// INDIRECT, INCIDENTAL, SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR OPERATION OF THE +// SAMPLE SOURCE CODE. IBM HAS NO OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS +// OR MODIFICATIONS TO THE SAMPLE SOURCE CODE. +// +// (C) COPYRIGHT International Business Machines Corp., 2003,2011 +// All Rights Reserved * Licensed Materials - Property of IBM +// + +package com.ibm.websphere.samples.pbw.war; + +import java.io.Serializable; + +import javax.validation.constraints.Min; + +import com.ibm.websphere.samples.pbw.jpa.BackOrder; +import com.ibm.websphere.samples.pbw.jpa.Inventory; + +/** + * ShoppingItem wraps the JPA Inventory entity class to provide additional methods needed by the web + * app. + */ +public class ShoppingItem implements Cloneable, Serializable { + + private static final long serialVersionUID = 1L; + private Inventory item; + + public ShoppingItem() { + + } + + public ShoppingItem(Inventory i) { + item = i; + } + + public ShoppingItem(String key, String name, String heading, String desc, String pkginfo, String image, float price, + float cost, int quantity, int category, String notes, boolean isPublic) { + item = new Inventory(key, name, heading, desc, pkginfo, image, price, cost, quantity, category, notes, + isPublic); + } + + /** + * Subtotal price calculates a cost based on price and quantity. + */ + public float getSubtotalPrice() { + return getPrice() * getQuantity(); + } + + /** + * @param o + * @return boolean true if object equals this + * @see java.lang.Object#equals(java.lang.Object) + */ + public boolean equals(Object o) { + return item.equals(o); + } + + /** + * @return int hashcode for this object + * @see java.lang.Object#hashCode() + */ + public int hashCode() { + return item.hashCode(); + } + + /** + * @return String String representation of this object + * @see java.lang.Object#toString() + */ + public String toString() { + return item.toString(); + } + + /** + * @param quantity + * @see com.ibm.websphere.samples.pbw.jpa.Inventory#increaseInventory(int) + */ + public void increaseInventory(int quantity) { + item.increaseInventory(quantity); + } + + /** + * @return int category enum int value + * @see com.ibm.websphere.samples.pbw.jpa.Inventory#getCategory() + */ + public int getCategory() { + return item.getCategory(); + } + + /** + * @param category + * @see com.ibm.websphere.samples.pbw.jpa.Inventory#setCategory(int) + */ + public void setCategory(int category) { + item.setCategory(category); + } + + /** + * @return float cost of the item + * @see com.ibm.websphere.samples.pbw.jpa.Inventory#getCost() + */ + public float getCost() { + return item.getCost(); + } + + /** + * @param cost + * @see com.ibm.websphere.samples.pbw.jpa.Inventory#setCost(float) + */ + public void setCost(float cost) { + item.setCost(cost); + } + + /** + * @return String description of the item + * @see com.ibm.websphere.samples.pbw.jpa.Inventory#getDescription() + */ + public String getDescription() { + return item.getDescription(); + } + + /** + * @param description + * @see com.ibm.websphere.samples.pbw.jpa.Inventory#setDescription(java.lang.String) + */ + public void setDescription(String description) { + item.setDescription(description); + } + + /** + * @return String item heading + * @see com.ibm.websphere.samples.pbw.jpa.Inventory#getHeading() + */ + public String getHeading() { + return item.getHeading(); + } + + /** + * @param heading + * @see com.ibm.websphere.samples.pbw.jpa.Inventory#setHeading(java.lang.String) + */ + public void setHeading(String heading) { + item.setHeading(heading); + } + + /** + * @return String image URI + * @see com.ibm.websphere.samples.pbw.jpa.Inventory#getImage() + */ + public String getImage() { + return item.getImage(); + } + + /** + * @param image + * @see com.ibm.websphere.samples.pbw.jpa.Inventory#setImage(java.lang.String) + */ + public void setImage(String image) { + item.setImage(image); + } + + /** + * @return String name of the item + * @see com.ibm.websphere.samples.pbw.jpa.Inventory#getName() + */ + public String getName() { + return item.getName(); + } + + /** + * @param name + * @see com.ibm.websphere.samples.pbw.jpa.Inventory#setName(java.lang.String) + */ + public void setName(String name) { + item.setName(name); + } + + /** + * @return String item notes + * @see com.ibm.websphere.samples.pbw.jpa.Inventory#getNotes() + */ + public String getNotes() { + return item.getNotes(); + } + + /** + * @param notes + * @see com.ibm.websphere.samples.pbw.jpa.Inventory#setNotes(java.lang.String) + */ + public void setNotes(String notes) { + item.setNotes(notes); + } + + /** + * @return String package information + * @see com.ibm.websphere.samples.pbw.jpa.Inventory#getPkginfo() + */ + public String getPkginfo() { + return item.getPkginfo(); + } + + /** + * @param pkginfo + * @see com.ibm.websphere.samples.pbw.jpa.Inventory#setPkginfo(java.lang.String) + */ + public void setPkginfo(String pkginfo) { + item.setPkginfo(pkginfo); + } + + /** + * @return float Price of the item + * @see com.ibm.websphere.samples.pbw.jpa.Inventory#getPrice() + */ + public float getPrice() { + return item.getPrice(); + } + + /** + * @param price + * @see com.ibm.websphere.samples.pbw.jpa.Inventory#setPrice(float) + */ + public void setPrice(float price) { + item.setPrice(price); + } + + /** + * Property accessor for quantity of items ordered. Quantity may not be less than zero. Bean + * Validation will ensure this is true. + * + * @return int quantity of items + * @see com.ibm.websphere.samples.pbw.jpa.Inventory#getQuantity() + */ + @Min(value = 0, message = "Quantity must be a number greater than or equal to zero.") + public int getQuantity() { + return item.getQuantity(); + } + + /** + * @param quantity + * @see com.ibm.websphere.samples.pbw.jpa.Inventory#setQuantity(int) + */ + public void setQuantity(int quantity) { + item.setQuantity(quantity); + } + + /** + * @return int maximum threshold + * @see com.ibm.websphere.samples.pbw.jpa.Inventory#getMaxThreshold() + */ + public int getMaxThreshold() { + return item.getMaxThreshold(); + } + + /** + * @param maxThreshold + * @see com.ibm.websphere.samples.pbw.jpa.Inventory#setMaxThreshold(int) + */ + public void setMaxThreshold(int maxThreshold) { + item.setMaxThreshold(maxThreshold); + } + + /** + * @return int minimum threshold + * @see com.ibm.websphere.samples.pbw.jpa.Inventory#getMinThreshold() + */ + public int getMinThreshold() { + return item.getMinThreshold(); + } + + /** + * @param minThreshold + * @see com.ibm.websphere.samples.pbw.jpa.Inventory#setMinThreshold(int) + */ + public void setMinThreshold(int minThreshold) { + item.setMinThreshold(minThreshold); + } + + /** + * @return String item ID in the inventory + * @see com.ibm.websphere.samples.pbw.jpa.Inventory#getInventoryId() + */ + public String getInventoryId() { + return item.getInventoryId(); + } + + /** + * @param id + * @see com.ibm.websphere.samples.pbw.jpa.Inventory#setInventoryId(java.lang.String) + */ + public void setInventoryId(String id) { + item.setInventoryId(id); + } + + /** + * @return String item ID + * @see com.ibm.websphere.samples.pbw.jpa.Inventory#getID() + */ + public String getID() { + return item.getID(); + } + + /** + * @param id + * @see com.ibm.websphere.samples.pbw.jpa.Inventory#setID(java.lang.String) + */ + public void setID(String id) { + item.setID(id); + } + + /** + * @return boolean true if this is a public item + * @see com.ibm.websphere.samples.pbw.jpa.Inventory#isPublic() + */ + public boolean isPublic() { + return item.isPublic(); + } + + /** + * @param isPublic + * @see com.ibm.websphere.samples.pbw.jpa.Inventory#setIsPublic(boolean) + */ + public void setIsPublic(boolean isPublic) { + item.setIsPublic(isPublic); + } + + /** + * @param isPublic + * @see com.ibm.websphere.samples.pbw.jpa.Inventory#setPrivacy(boolean) + */ + public void setPrivacy(boolean isPublic) { + item.setPrivacy(isPublic); + } + + /** + * @return byte[] item image as a byte array + * @see com.ibm.websphere.samples.pbw.jpa.Inventory#getImgbytes() + */ + public byte[] getImgbytes() { + return item.getImgbytes(); + } + + /** + * @param imgbytes + * @see com.ibm.websphere.samples.pbw.jpa.Inventory#setImgbytes(byte[]) + */ + public void setImgbytes(byte[] imgbytes) { + item.setImgbytes(imgbytes); + } + + /** + * @return BackOrder item is on back order + * @see com.ibm.websphere.samples.pbw.jpa.Inventory#getBackOrder() + */ + public BackOrder getBackOrder() { + return item.getBackOrder(); + } + + /** + * @param backOrder + * @see com.ibm.websphere.samples.pbw.jpa.Inventory#setBackOrder(com.ibm.websphere.samples.pbw.jpa.BackOrder) + */ + public void setBackOrder(BackOrder backOrder) { + item.setBackOrder(backOrder); + } + +} diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/war/ValidatePasswords.java b/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/war/ValidatePasswords.java new file mode 100755 index 00000000..c62f6a8d --- /dev/null +++ b/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/war/ValidatePasswords.java @@ -0,0 +1,49 @@ +// +// COPYRIGHT LICENSE: This information contains sample code provided in source code form. You may copy, +// modify, and distribute these sample programs in any form without payment to IBM for the purposes of +// developing, using, marketing or distributing application programs conforming to the application +// programming interface for the operating platform for which the sample code is written. +// Notwithstanding anything to the contrary, IBM PROVIDES THE SAMPLE SOURCE CODE ON AN "AS IS" BASIS +// AND IBM DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, ANY IMPLIED +// WARRANTIES OR CONDITIONS OF MERCHANTABILITY, SATISFACTORY QUALITY, FITNESS FOR A PARTICULAR PURPOSE, +// TITLE, AND ANY WARRANTY OR CONDITION OF NON-INFRINGEMENT. IBM SHALL NOT BE LIABLE FOR ANY DIRECT, +// INDIRECT, INCIDENTAL, SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR OPERATION OF THE +// SAMPLE SOURCE CODE. IBM HAS NO OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS +// OR MODIFICATIONS TO THE SAMPLE SOURCE CODE. +// +// (C) COPYRIGHT International Business Machines Corp., 2003,2011 +// All Rights Reserved * Licensed Materials - Property of IBM +// + +package com.ibm.websphere.samples.pbw.war; + +import javax.faces.component.UIComponent; +import javax.faces.component.UIInput; +import javax.faces.context.FacesContext; +import javax.faces.validator.FacesValidator; +import javax.faces.validator.Validator; +import javax.faces.validator.ValidatorException; + +/** + * A JSF validator class, not implemented in Bean Validation since validation is only required + * during GUI interaction. + */ +@FacesValidator(value = "validatePasswords") +public class ValidatePasswords implements Validator { + + @Override + public void validate(FacesContext context, UIComponent component, Object value) throws ValidatorException { + UIInput otherComponent; + String otherID = (String) component.getAttributes().get("otherPasswordID"); + String otherStr; + String str = (String) value; + + otherComponent = (UIInput) context.getViewRoot().findComponent(otherID); + otherStr = (String) otherComponent.getValue(); + + if (!otherStr.equals(str)) { + ValidatorUtils.addErrorMessage(context, "Passwords do not match."); + } + } + +} diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/war/ValidatorUtils.java b/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/war/ValidatorUtils.java new file mode 100755 index 00000000..ca2ad3f2 --- /dev/null +++ b/src/test/resources/test-applications/plantsbywebsphere/src/main/java/com/ibm/websphere/samples/pbw/war/ValidatorUtils.java @@ -0,0 +1,43 @@ +// +// COPYRIGHT LICENSE: This information contains sample code provided in source code form. You may copy, +// modify, and distribute these sample programs in any form without payment to IBM for the purposes of +// developing, using, marketing or distributing application programs conforming to the application +// programming interface for the operating platform for which the sample code is written. +// Notwithstanding anything to the contrary, IBM PROVIDES THE SAMPLE SOURCE CODE ON AN "AS IS" BASIS +// AND IBM DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, ANY IMPLIED +// WARRANTIES OR CONDITIONS OF MERCHANTABILITY, SATISFACTORY QUALITY, FITNESS FOR A PARTICULAR PURPOSE, +// TITLE, AND ANY WARRANTY OR CONDITION OF NON-INFRINGEMENT. IBM SHALL NOT BE LIABLE FOR ANY DIRECT, +// INDIRECT, INCIDENTAL, SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR OPERATION OF THE +// SAMPLE SOURCE CODE. IBM HAS NO OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS +// OR MODIFICATIONS TO THE SAMPLE SOURCE CODE. +// +// (C) COPYRIGHT International Business Machines Corp., 2003,2011 +// All Rights Reserved * Licensed Materials - Property of IBM +// + +package com.ibm.websphere.samples.pbw.war; + +import javax.faces.application.FacesMessage; +import javax.faces.component.UIComponent; +import javax.faces.context.FacesContext; +import javax.faces.validator.ValidatorException; + +/** + * Simple helper class for JSF validators to handle error messages. + * + */ +public class ValidatorUtils { + protected static void addErrorMessage(FacesContext context, String message) { + FacesMessage facesMessage = new FacesMessage(); + facesMessage.setDetail(message); + facesMessage.setSummary(message); + facesMessage.setSeverity(FacesMessage.SEVERITY_ERROR); + throw new ValidatorException(facesMessage); + } + + protected static void addErrorMessage(FacesContext context, UIComponent component) { + String errorMessage = (String) component.getAttributes().get("errorMessage"); + + addErrorMessage(context, errorMessage); + } +} diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/liberty/config/server.xml b/src/test/resources/test-applications/plantsbywebsphere/src/main/liberty/config/server.xml new file mode 100644 index 00000000..7288548d --- /dev/null +++ b/src/test/resources/test-applications/plantsbywebsphere/src/main/liberty/config/server.xml @@ -0,0 +1,39 @@ + + + + javaee-7.0 + localConnector-1.0 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/resources/META-INF/persistence.xml b/src/test/resources/test-applications/plantsbywebsphere/src/main/resources/META-INF/persistence.xml new file mode 100755 index 00000000..3269f800 --- /dev/null +++ b/src/test/resources/test-applications/plantsbywebsphere/src/main/resources/META-INF/persistence.xml @@ -0,0 +1,14 @@ + + + jdbc/PlantsByWebSphereDataSource + jdbc/PlantsByWebSphereDataSourceNONJTA + false + + + + + + + \ No newline at end of file diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/resources/pbw.properties b/src/test/resources/test-applications/plantsbywebsphere/src/main/resources/pbw.properties new file mode 100644 index 00000000..1a2858e9 --- /dev/null +++ b/src/test/resources/test-applications/plantsbywebsphere/src/main/resources/pbw.properties @@ -0,0 +1,58 @@ +# +# Row Values for Inventory Table +# +inventory=F0001|African Orchid|Rare Delicate Beauty|African orchids are some of the most endangered and rare kinds of orchids grown today. This variety is medium yellow with varigated salmon and pink insides. Height: 18 to 28 inches.|per plant|flower_african_orchid.jpg|250.00|145.00|100|0|NOTES and stuff|true +inventory=F0002|Baby Breath|Ethereal White Elegance|(Gypsophila muralis). Small, delicate Baby Breath flowers create clouds of accents in floral arrangements or beautiful lacy designs when used alone. Can be used fresh or dried. Height: 12 to 18 inches.|2 plants|flower_bbreath.jpg|6.00|2.00|100|0|NOTES and stuff|true +inventory=F0003|Black-eyed Susan|Radiant, like the Sun|(Rudbeckia hirta). The Black-Eyed Susan was made the official Maryland flower in 1918. Typically they grow wild -- and bloom between May and August -- but you can purchase them as a permanent addition to your own garden. Height: 2 to 3 feet.|2 plants|flower_black-eyed_susan.jpg|9.00|2.00|100|0|NOTES and stuff|true +inventory=F0004|Coleus|Colorful Accent|(Coleus blumei). An attractive foliage plant, the Coleus is especially suited for containers and underplantings. While it can tolerate the sun, the color of leaves is enhanced in partial to full shade. Height: 12 inches to 36 inches.|4 plants|flower_coleus.jpg|8.00|3.00|100|0|NOTES and stuff|true +inventory=F0005|Yellow Shasta Daisy|Charming Simple Beauty|(Bellis perenis). Oversized blossoms in bright yellow with a very long bloom period. For extra decoration, cut the stems and place in food coloring and water to make vibrantly colored cut flowers. Height: 1 to 3 feet.|2 plants|flower_daisies.jpg|16.00|2.50|100|0|NOTES and stuff|true +inventory=F0006|Perennial Foxglove|Showy Thimble-like Blooms|(Digitalis). Foxglove grows best in shade and works well as a tall, showy flower that lights up a dark garden area. The individual flowers are sized and shaped like thimbles. Height: 2 to 3 feet.|3 plants|flower_foxglove.jpg|12.00|2.75|100|0|NOTES and stuff|true +inventory=F0007|Geranium|Red and Flowery|(Geranium sanguineum). This bright red version of the Bloody Cranesbill Geranium has small, bright green foliage that adds dimension and sets off the vibrant colored flowers. Assembled. Height: 8 inches.|per plant|flower_geranium.jpg|8.00|2.30|100|0|NOTES and stuff|true +inventory=F0008|Goodnight Moon Iris|Fluorescent Bloomer|Iris provides lovely cut flowers which brighten rainy spring days. When the Iris has stopped blossoming, cut off dead blossoms and dead bloom stalks, but do not cut back the leaves until they begin to turn brown in the Fall.|5 bulbs|flower_goodnight_moon_iris.jpg|7.50|3.60|100|0|NOTES and stuff|true +inventory=F0009|Impatiens|Tangerine Dream|(Impatiens walleriana). Vibrant tangerine-orange flowers coordinate nicely with green foliage. Impatiens is a great annual for beds, borders, containers and hanging baskets. Grow in full sun to partial shade. Height: 15 to 20 inches.|2 plants|flower_impatiens.jpg|9.95|1.25|100|0|NOTES and stuff|true +inventory=F0010|Lily|Purple Summer Glory|(Hemerocallis fulva) Magnificent flowers up to 3 inches or more across. Blooms start June through August, depending on variety, and have a subtle fragrance. Tolerates dry soil but it is wise to water deeply during periods of dry weather.|4 bulbs|flower_lily.jpg|6.50|3.25|100|0|NOTES and stuff|true +inventory=F0011|Pansy|Autumn Mix|(Viola tricolor). Reminiscent of the colors of fall. Our Pansies will bloom from fall to early winter, and again in the spring! They prefer part shade to full sun. Height 6 to 8 inches.|1 pkt. (25 seeds)|flower_pansies.jpg|2.00|1.25|100|0|NOTES and stuff|true +inventory=F0012|Petunia|Striped Brightness|(Petunia x hybrida). Striking, large magenta flowers with contrasting white trumpet stripes. Excellent for borders, window boxes, planters and bouquets. Petunias do best in full sun but will tolerate light shade. Height: 1 foot.|1 pkt. (50 seeds)|flower_petunias.jpg|3.00|1.25|100|0|NOTES and stuff|true +inventory=F0013|Primrose|Means: I Cannot Live Without You|(Primula). Large, fragrant blooms in wide-eyed spring like yellow. Plants thrive despite heat and drought and require good drainage. Height: 12 inches.|6 plants|flower_primrose.jpg|10.00|4.75|100|0|NOTES and stuff|true +inventory=F0014|Red Poinsettia|Seasonal Beauty|(Euphorbia pulcherrima). Lush red flowers float atop deep green leaves. They were first developed in Mexico and need warm temperatures and full sun. Height: 2 to 3 feet.|per plant|flower_red_poinsettia.jpg|11.00|4.50|100|0|NOTES and stuff|true +inventory=F0015|Red Rose|Always in Bloom|(Rosa Floribunda). Created in France (1956), this rose continually produces boldly colored, medium-sized red blooms. Intensely fragrant. Includes thorns and songs about lost love. Height: 10 - 12 feet.|per vine|flower_red_rose.jpg|32.00|15.00|100|0|NOTES and stuff|true +inventory=F0016|Sparkler Celosia|Brilliant Flames of Red Fire|(Celosia plumosa). Excellent for cutting, these Sparkler Celosia have brilliant 6 inch plumes. They are a perfect companion for full-sun garden beds or in fresh or dried bouquets. Height: 2 to 2.5 feet.|4 plants|flower_sparkler_celosia.jpg|7.00|3.25|100|0|NOTES and stuff|true +inventory=F0017|Tulip|Mixed Dutch Delight|(Tulipa). Out famous tulip bulbs are supplied by one of the finest Dutch bulb growers. Mixed colors resonate on even the cloudiest of days. These bulbs are of the highest quality and are guaranteed. Height: 10 to 12 inches.|10 bulbs|flower_tulips.jpg|17.00|9.00|100|0|NOTES and stuff|true +inventory=F0018|White Poinsettia|Seasonal Simplicity|(Euphorbia pulcherrima). A rich color of deep green leaves support large bright white blossoms. Poinsettias were first developed in Mexico and need full sun. Height: 2 to 3 feet.|per plant|flower_white_poinsettia.jpg|14.00|5.50|100|0|NOTES and stuff|true +inventory=F0019|White Rose|A Classic Beauty|(Rosa Floribunda). Classic, white buds open into double blooms of palest pink to white on this rose created in 1888 France. Thornless. Height: 4 to 5 feet.|per vine|flower_white_rose.jpg|37.00|17.00|100|0|NOTES and stuff|true +inventory=F0020|Zinnia|You cut more, they bloom more!|(Zinnia elegans). Zinnias add bold, vibrant color to gardens. They are heat loving and prefer full-sun. Perfect for beds and cut floral arrangements. They even attract butterflies! Height: 12 to 18 inches.|12 plants|flower_zinnia.jpg|7.95|3.95|100|0|NOTES and stuff|true +inventory=A0001|Bulb Digger|Pick The Right Tool For The Right Job|Simplifies digging holes for poles, posts, and many other jobs. Tempered steel even breaks through rock. Long, coated 54 inch hardwood handle.|Assembled|accessories_bulbdigger.jpg|12.00|5.00|100|3|NOTES and stuff|true +inventory=A0002|Birdfeeder|Birds of a Feather Feed Together|Hexagon shaped bird feeder stores food upright which allows more birds to feed and gives you the best view! Natural wood base supports clear plastic lenses on all 5 sides. Ready to be hung or mounted on a pole (not included).|Pole not included|accessories_birdfeeder.jpg|16.00|7.00|100|3|NOTES and stuff|true +inventory=A0003|Birdhouse|Ideal for Nesting Birds|Wooden birdhouse perfect for nesting birds and their companions. Made of naturally weather resistant pine with a sloped roof. Mounting hardware and instructions included. Height: 18 inches. Width: 10 inches.|Assembled|accessories_birdhouse.jpg|12.00|6.00|100|3|NOTES and stuff|true +inventory=A0004|Finch Food|Attracts Fabulous Finches|Bird feed especially formulated for finches, as well as other small birds. No seeds are wasted; birds will like them all.|20 lb. bag|accessories_finchfood.jpg|6.50|2.00|100|3|NOTES and stuff|true +inventory=A0005|Grass Rake|Put the Kids to Work|Welded bow rake is heat treated for strength. Long, coated 54 inch hardwood handle. Use it to level and break up clumps of soil, remove debris, and spread topsoil or compost. 5 year limited warranty.|Assembled|accessories_grassrake.jpg|6.00|2.50|100|3|NOTES and stuff|true +inventory=A0006|Leaf Rake|The Ultimate Backscratcher|Wooden polyurethene coated handle adjusts is 32 inches long. Comfortable grip. Fully heat treated head and chip resistant carbon dioxide coating make this rake last for years.|Assembled|accessories_leafrake.jpg|10.00|4.50|100|3|NOTES and stuff|true +inventory=A0007|Shovel|Dig it, Man!|Open back tempered steel blade attached to sturdy hardwood handle with 6 inch lead. Uses include: planting shrubs, trees, and general digging or cutting through sod or soil. Handle Length: 46 inches|Assembled|accessories_shovel.jpg|7.00|3.00|100|3|NOTES and stuff|true +inventory=A0008|Gloves|If The Gloves Fit, You Must Plant It|One size fits all. Each carefully sewn left glove comes with an accompanying right glove. Comes in pack of 3, with colors red, green, and blue.|3 pairs per pack|accessories_gloves.jpg|4.50|1.00|100|3|NOTES and stuff|true +inventory=A0009|Hand Rake|A Real Humdinger|Sometimes you have to work on your hands and knees. This tool is great for raking, digging, whatever. Handle is cushioned with rubber.|Assembled|accessories_handrake.jpg|4.50|1.50|100|3|NOTES and stuff|true +inventory=A0010|Large Pot|Large and, well, just Large|Large ceramic pot perfect for bigger plants that need to be moved in during frosts. Diameter of 18 inches - holds 5 gallon plants.|N/A|accessories_pot.jpg|10.00|3.00|100|3|NOTES and stuff|true +inventory=A0011|Wheelbarrow|Just like Grandpa used to have!|Shiny red wheelbarrow with epoxy coated steel bin and wooden handles. Tire is solid with thick treads that grip rough, wet surfaces. Large capacity - 3 Cu.Ft. capacity, 150 Lb. maximum load|Assembled|accessories_wheelbarrow.jpg|29.00|12.00|100|3|NOTES and stuff|true +inventory=T0001|Ash|Full and Leafy like a Lollipop|Large, round, summer shade leads to yellow leaves that burst through dreary Fall days! Excellent for yards. Mature height: up to 20 feet.|10 gallon seedling|trees_ash.jpg|50.00|20.00|100|2|NOTES and stuff|true +inventory=T0002|Aspen|Tall, Slender Grace|White barked Aspens are particularly beautiful during white winters. Close your eyes and imagine a light breeze sailing over the trunk and the crinkling of the colliding leaves. Mature height: up to 28 feet.|10 gallon seedling|trees_aspen.jpg|53.00|21.00|100|2|NOTES and stuff|true +inventory=T0003|Bonsai|Tabletop Fun|Bonsais are great miniature replicas of your favorite yard tree. They can be indoors or out -- and their size makes them perfect for tabletop decoration.|0.5 gallon mature tree|trees_bonsai.jpg|30.00|12.00|100|2|NOTES and stuff|true +inventory=T0004|Crabapple|Short but beautiful|These trees light up Springtime with pink, fragrant flowers that change into crabapples. Perfect for Maryland residents. Mature height: up to 20 feet.|10 gallon seedling|trees_crab.jpg|57.00|19.00|100|2|NOTES and stuff|true +inventory=T0005|Maple|Traditional Shade Producer|Famous for their syrup, you will be able to tap into your own endless supply in just a few years. Not suitable for diabetics. Mature height: up to 24 feet.|10 gallon seedling|trees_maple.jpg|45.00|22.00|100|2|NOTES and stuff|true +inventory=V0001|Cabbage|Crispy|Crispy green cabbage will poke through summer gardens about 3-4 weeks after springtime planting of seedlings. An excellent source of Vitamin A and D.|1 pkt. (100 seeds)|veggies_cabbage.jpg|2.00|.70|100|1|NOTES and stuff|true +inventory=V0002|Ornamental Gourd|Gourd-geous!|OrNAMEntal gourds are a staple for Autumn flowerbeds, door decorations, floral arrangements and tabletop centerpieces. Grow your own this year to give to your neighbors and family.|1 pkt. (100 seeds)|veggies_gourds.jpg|1.50|.70|100|1|NOTES and stuff|true +inventory=V0003|Grapes|Be Your Own Winemaker|Join others who are fermenting their own small, personal batches of wine! These vines were developed in France and their grapes make a fruity, medium white wine or a fruity Beaujolais when pressed with the skins.|1 vine|veggies_grapes.jpg|49.00|20.50|100|1|NOTES and stuff|true +inventory=V0004|Onion|Fresh and Tasty from your Garden|Pure white onions are sweetest when grown at home and left in the ground until picking. Tissues not included.|4 bulbs|veggies_onion.jpg|9.00|4.75|100|1|NOTES and stuff|true +inventory=V0005|Pineapple|Tropical Delight|Pineapples can be grown at home with this frost-bearing breed. Yields 4 - 5 fruits annually, more in warmer climates. Fertilize with organic compost regularly for best results. Be careful of maurading neighbors.|8 gallon potted plant|veggies_pineapple.jpg|87.00|34.50|100|1|NOTES and stuff|true +inventory=V0006|Strawberries|Sweet Berry Scrumptiousness|Our brand is known for producing plump, sweet strawberries by the mid-June bucketful. Now you can grow them easily, with relatively little care, due to our patented version. Dental floss not included.|1 pkt. (50 seeds)|veggies_strawberries.jpg|3.50|1.50|100|1|NOTES and stuff|true +inventory=V0007|Watermelon|Seedless Summer |Plant our seeds indoors in late winter and transfer outside after threat of frost recedes; our seeds will produce huge, round, ripe melons by mid-June. Guaranteed not to contain active Acidophilous cultures.|1 pkt. (100 seeds)|veggies_watermelon.jpg|2.00|.50|50|1|NOTES and stuff|true +# +# Row Values for Idgenerator Table +# +idgenerator=ORDER|1 +idgenerator=BACKORDER|2 +# +# Row Values for Customer Table +# +customer=plants@plantsbywebsphere.ibm.com|plants|David|Grover|123 Main Street|Apt. C|Raleigh|NC|27604|919-555-1234 +# +# Row Values for Supplier Table +supplier=Supplier|Greenhouse By WebSphere|4205 Miami Blvd.|Durham|NC|27709|919-555-1212|http://localhost:9080/OrderProcessorEJB/services/FrontGate?wsdl \ No newline at end of file diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/WEB-INF/PlantTemplate.xhtml b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/WEB-INF/PlantTemplate.xhtml new file mode 100755 index 00000000..d3b63c0b --- /dev/null +++ b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/WEB-INF/PlantTemplate.xhtml @@ -0,0 +1,139 @@ + + + + + + + + + ${title} + + + + + +
+ +
+ + + \ No newline at end of file diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/WEB-INF/beans.xml b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/WEB-INF/beans.xml new file mode 100755 index 00000000..d8a87307 --- /dev/null +++ b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/WEB-INF/beans.xml @@ -0,0 +1,7 @@ + + + \ No newline at end of file diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/WEB-INF/faces-config.xml b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/WEB-INF/faces-config.xml new file mode 100755 index 00000000..9c84443c --- /dev/null +++ b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/WEB-INF/faces-config.xml @@ -0,0 +1,19 @@ + + + + + pc_Help + pagecode.Help + request + + + + \ No newline at end of file diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/WEB-INF/ibm-ejb-jar-bnd.xml b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/WEB-INF/ibm-ejb-jar-bnd.xml new file mode 100755 index 00000000..b790daa7 --- /dev/null +++ b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/WEB-INF/ibm-ejb-jar-bnd.xml @@ -0,0 +1,10 @@ + + + + + + diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/WEB-INF/ibm-web-bnd.xml b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/WEB-INF/ibm-web-bnd.xml new file mode 100755 index 00000000..d191ed33 --- /dev/null +++ b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/WEB-INF/ibm-web-bnd.xml @@ -0,0 +1,10 @@ + + + + + + diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/WEB-INF/ibm-web-ext.xml b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/WEB-INF/ibm-web-ext.xml new file mode 100755 index 00000000..a214742c --- /dev/null +++ b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/WEB-INF/ibm-web-ext.xml @@ -0,0 +1,14 @@ + + + + + + + + + + diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/WEB-INF/web.xml b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/WEB-INF/web.xml new file mode 100755 index 00000000..1d486eea --- /dev/null +++ b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/WEB-INF/web.xml @@ -0,0 +1,69 @@ + + + PlantsByWebSphere + + javax.faces.PROJECT_STAGE + + Development + + + javax.faces.VALIDATE_EMPTY_FIELDS + false + + + index.html + + + FacesServlet + javax.faces.webapp.FacesServlet + + + javax.faces.application.ViewExpiredException + /viewExpired.xhtml + + + /error.jsp + + + FacesServlet + *.jsf + + + + SampAdmin + Sample Admin + /adminactions.html + /adminbanner.html + /backorderadmin.jsp + /servlet/AdminServlet + /supplierconfig.jsp + GET + PUT + HEAD + TRACE + POST + DELETE + OPTIONS + + + Samples Administrator + SampAdmin + + + NONE + + + + BASIC + Default + + + Samples Administrator + SampAdmin + + + 10 + + diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/account.xhtml b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/account.xhtml new file mode 100755 index 00000000..47d3da47 --- /dev/null +++ b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/account.xhtml @@ -0,0 +1,254 @@ + + + + + + + + + + + + + + + + + +
+

+ + > + +

+
+ + + + + + + + + + + + + + + +

Account + Update

+ Enter the information below to update your account. This + information will not be shared without your permission. With + your permission we will only share your name and email address + with our trusted business partners.

+

+

+ Required fields are denoted with a red asterisk ( + + ).

+

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Contact + Information
   

+ +

+

+ +    + +

+

+ +

+

+ +    + +

+

+ +

+

+ +    + +

+

+ +

+

+ +

+

+ +

+

+ +    + +

+

+ +

+

+ +    + +

+

+ +

+

+ +    + +

+

+ +

+

+ +    + +

+

+ +

+

+
+ + + + +
+
+
+
+
+ \ No newline at end of file diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/admin.html b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/admin.html new file mode 100755 index 00000000..fda304e2 --- /dev/null +++ b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/admin.html @@ -0,0 +1,39 @@ + + + + + + + + +Plants by WebSphere Administration + + + + + + + + + + + \ No newline at end of file diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/adminactions.html b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/adminactions.html new file mode 100755 index 00000000..3a3aa673 --- /dev/null +++ b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/adminactions.html @@ -0,0 +1,74 @@ + + + + + + + + + + +Plants by WebSphere Administration + + + + + + + + + + + + + + + + + + + + +
Manage + BackOrders - View backorder inventory, order from suppliers, add + new stock to inventory.
Supplier + Configuration - Configure the Supplier.
+
+ + + + + +
Powered by WebSphere + +
+ + \ No newline at end of file diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/adminbanner.html b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/adminbanner.html new file mode 100755 index 00000000..5467bec3 --- /dev/null +++ b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/adminbanner.html @@ -0,0 +1,58 @@ + + + + + + + + + + + + + + + + + + + + +
Plants by WebSphere Administration
+ + + + + + +
  HOME  :  ADMIN HOME  :  + HELP  
+ + \ No newline at end of file diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/applycss.js b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/applycss.js new file mode 100755 index 00000000..49132df1 --- /dev/null +++ b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/applycss.js @@ -0,0 +1,27 @@ +// +// COPYRIGHT LICENSE: This information contains sample code provided in source code form. You may copy, +// modify, and distribute these sample programs in any form without payment to IBM for the purposes of +// developing, using, marketing or distributing application programs conforming to the application +// programming interface for the operating platform for which the sample code is written. +// Notwithstanding anything to the contrary, IBM PROVIDES THE SAMPLE SOURCE CODE ON AN "AS IS" BASIS +// AND IBM DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, ANY IMPLIED +// WARRANTIES OR CONDITIONS OF MERCHANTABILITY, SATISFACTORY QUALITY, FITNESS FOR A PARTICULAR PURPOSE, +// TITLE, AND ANY WARRANTY OR CONDITION OF NON-INFRINGEMENT. IBM SHALL NOT BE LIABLE FOR ANY DIRECT, +// INDIRECT, INCIDENTAL, SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR OPERATION OF THE +// SAMPLE SOURCE CODE. IBM HAS NO OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS +// OR MODIFICATIONS TO THE SAMPLE SOURCE CODE. +// +// (C) COPYRIGHT International Business Machines Corp., 2001,2011 +// All Rights Reserved * Licensed Materials - Property of IBM +// + +var i = navigator.appVersion.indexOf('MSIE 6'); + +if ((navigator.appName == "Microsoft Internet Explorer") + && (parseInt(navigator.appVersion) >= 4)) { + document + .write(''); +} else { + document + .write(''); +} \ No newline at end of file diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/backorderadmin.jsp b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/backorderadmin.jsp new file mode 100755 index 00000000..f8475f90 --- /dev/null +++ b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/backorderadmin.jsp @@ -0,0 +1,526 @@ + + + + +<%@ page language="java" contentType="text/html; charset=ISO-8859-1" + pageEncoding="ISO-8859-1"%> + + + + +backorderadmin.jsp + + + + + + + + + <%@page + import="com.ibm.websphere.samples.pbw.war.BackOrderItem,com.ibm.websphere.samples.pbw.jpa.Inventory,com.ibm.websphere.samples.pbw.utils.Util,java.text.SimpleDateFormat,java.util.*" + session="true" isThreadSafe="true" isErrorPage="false"%> + + <% + Collection backOrderItems = (Collection) session.getAttribute("backorderitems"); + %> + + + + + + + + + + +
+

+ Admin + Home +

+
+ + + + + + + + + + + + + + <% + if (backOrderItems != null) { + %> + + + + + + + + + + +
+

BackOrder Administration

+
<% + String results; + results = (String) request.getAttribute(Util.ATTR_RESULTS); + if (results != null) + out.print(results); + %> +
+

Here are the inventory items that have been back + ordered. +

+ +
+


+
+
+ Back Order Items
+
+

+ The Back Order Items list shows the inventory items + that may be ordered from a supplier. Select one or more + ordered items and click the Order Stock to send an + order to the supplier. The QUANTITY TO ORDER may be + changed before the order is submitted. +


+ + + + + + + + + + + + + + <% + Util.debug("BackOrders Found in backorderadmin.jsp"); + Iterator i = backOrderItems.iterator(); + while (i.hasNext()) { + BackOrderItem backOrderItem = (BackOrderItem) i.next(); + String status = backOrderItem.getStatus(); + if (status.equals(Util.STATUS_ORDERSTOCK)) { + String backOrderID = backOrderItem.getBackOrderID(); + String invID = backOrderItem.getInventory().getInventoryId(); + String name = backOrderItem.getName(); + int quantity = backOrderItem.getQuantity(); + int inventoryQuantity = backOrderItem.getInventoryQuantity(); + + Date lowDateRaw = new Date(backOrderItem.getLowDate()); + SimpleDateFormat formatter = new SimpleDateFormat("MM/dd/yyyy hh:mm:ss a zzz"); + String lowDate = formatter.format(lowDateRaw); + %> + + + + + + + + + + + + + + + + + + + + + <% + } // if (status.equals(Utils.STATUS_ORDERSTOCK()) + } // End while (i.hasNext() + } // if (backOrderItems != null) + else { + Util.debug("NO BackOrders Found in backorderadmin.jsp"); + } + %> + + + + + + + + +
BACK + ORDER #ITEM + #ITEM + DESCRIPTIONQUANTITY TO ORDERCURRENT INVENTORY + QUANTITYLOW INVENTORY DATE
+ +
+

<%=backOrderID%>

+
+

<%=invID%>

+
+

<%=name%>

+
+

<%=inventoryQuantity%>

+
+

<%=lowDate%>

+
+ +
+
+
+ Ordered Items

+
+

+ The Ordered Items list shows the inventory items that + have already been ordered from a supplier but have not been + received yet. Select one or more ordered items and click the Check + Status to check the status from the supplier. +

+ + + + + + + + + + + + + + + <% + if (backOrderItems != null) { + Util.debug("BackOrders Found in backorderadmin.jsp"); + Iterator i = backOrderItems.iterator(); + while (i.hasNext()) { + BackOrderItem backOrderItem = (BackOrderItem) i.next(); + String status = backOrderItem.getStatus(); + if (status.equals(Util.STATUS_ORDEREDSTOCK)) { + String backOrderID = backOrderItem.getBackOrderID(); + String supplierOrderID = backOrderItem.getSupplierOrderID(); + String invID = backOrderItem.getInventory().getInventoryId(); + String name = backOrderItem.getName(); + int quantity = backOrderItem.getQuantity(); + int inventoryQuantity = backOrderItem.getInventoryQuantity(); + + Date lowDateRaw = new Date(backOrderItem.getLowDate()); + Date orderedDateRaw = new Date(backOrderItem.getOrderDate()); + + SimpleDateFormat formatter = new SimpleDateFormat("MM/dd/yyyy hh:mm:ss a zzz"); + String lowDate = formatter.format(lowDateRaw); + String orderedDate = formatter.format(orderedDateRaw); + %> + + + + + + + + + + + + <% + } // if (status.equals(Utils.STATUS_ORDEREDSTOCK()) + } // End while (i.hasNext() + } // if (backOrderItems != null) + else { + Util.debug("NO BackOrders Found in backorderadmin.jsp"); + } + %> + + + + + + + +
BACK + ORDER #SUPPLIER + ORDER #ITEM + #ITEM + DESCRIPTIONQUANTITY ORDEREDCURRENT INVENTORY + QUANTITYLOW INVENTORY DATEORDERED DATE
+

<%=backOrderID%>

+
+

<%=supplierOrderID%>

+
+

<%=invID%>

+
+

<%=name%>

+
+

<%=quantity%>

+
+

<%=inventoryQuantity%>

+
+

<%=lowDate%>

+
+

<%=orderedDate%>

+
+ + +
+
+
+ Received Items

+
+

+ The Received Items list shows the inventory items that + have been received from a supplier but have not been added to + the inventory. Select one or more ordered items and click the + Update Stock to add the inventory received from the + supplier. +

+ + + + + + + + + + + + + + + <% + if (backOrderItems != null) { + Util.debug("BackOrders Found in backorderadmin.jsp"); + Iterator i = backOrderItems.iterator(); + while (i.hasNext()) { + BackOrderItem backOrderItem = (BackOrderItem) i.next(); + String status = backOrderItem.getStatus(); + if (status.equals(Util.STATUS_RECEIVEDSTOCK)) { + String backOrderID = backOrderItem.getBackOrderID(); + String supplierOrderID = backOrderItem.getSupplierOrderID(); + String invID = backOrderItem.getInventory().getInventoryId(); + String name = backOrderItem.getName(); + int quantity = backOrderItem.getQuantity(); + int inventoryQuantity = backOrderItem.getInventoryQuantity(); + + Date lowDateRaw = new Date(backOrderItem.getLowDate()); + Date orderedDateRaw = new Date(backOrderItem.getOrderDate()); + + SimpleDateFormat formatter = new SimpleDateFormat("MM/dd/yyyy hh:mm:ss a zzz"); + String lowDate = formatter.format(lowDateRaw); + String orderedDate = formatter.format(orderedDateRaw); + %> + + + + + + + + + + + + + <% + } // if (status.equals(Util.STATUS_RECEIVEDSTOCK)) + } // End while (i.hasNext() + } // if (backOrderItems != null) + else { + Util.debug("NO BackOrders Found in backorderadmin.jsp"); + } + %> + + + + + + + + +
BACK + ORDER #SUPPLIER + ORDER #ITEM + #ITEM + DESCRIPTIONQUANTITY RECEIVEDCURRENT INVENTORY + QUANTITYLOW INVENTORY DATEORDERED DATE
+

<%=backOrderID%>

+
+

<%=supplierOrderID%>

+
+

<%=invID%>

+
+

<%=name%>

+
+

<%=quantity%>

+
+

<%=inventoryQuantity%>

+
+

<%=lowDate%>

+
+

<%=orderedDate%>

+
+ +
+

+
+ + + + + + +
+

+
+

+ + + + + +
Powered by WebSphere + +
+ + diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/cart.xhtml b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/cart.xhtml new file mode 100755 index 00000000..4694d0be --- /dev/null +++ b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/cart.xhtml @@ -0,0 +1,171 @@ + + + + + + + + + + + + + + + + +

Here are the items you have selected. To recalculate your + total after changing the quantity of an item, select the + 'Recalculate' button. To remove an item from your cart, enter "0" + as the quantity. Select 'Checkout Now' to begin the checkout + process.

+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ +

+ Order Subtotal:   + + + +

+
+ + + + + + + + + + + + + + + + + + + +
+ +
+
+
+
+
+ diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/checkout_final.xhtml b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/checkout_final.xhtml new file mode 100755 index 00000000..72516243 --- /dev/null +++ b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/checkout_final.xhtml @@ -0,0 +1,339 @@ + + + + + + + + + + + + + + + + + +
+

+ + > + + > + +

+
+ + + + + + + + + + + + +
Review + Your Order

+ Review your order below and select 'Submit Order' at the + bottom to place your order. You can also add more items to + your order by selecting 'Continue Shopping'.
+
+

+ + + + + + + + + + + +
Order Information
+ + + + + + + +
ORDER TOTAL
+

+ + + + +

+
+
+ + + + + + + +
SHIPPING ADDRESS
+

+ +
+ +
+ +
+ +
+ +
+

+
+
+ + + + + + + +
BILLING ADDRESS
+

+ +
+ +
+ +
+ +
+ +
+

+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Order Details
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Order + Subtotal:

+

+ + + +

+
+

+ +

+
+

+ + + +

+

+ Order Total: +

+

+ + + + +

+
 
+ + + + + +
+ + + +
+
+
+
+
+ + + + +
+
+
+
+ \ No newline at end of file diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/collectionform.js b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/collectionform.js new file mode 100755 index 00000000..f5811db5 --- /dev/null +++ b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/collectionform.js @@ -0,0 +1,188 @@ +// +// COPYRIGHT LICENSE: This information contains sample code provided in source code form. You may copy, +// modify, and distribute these sample programs in any form without payment to IBM for the purposes of +// developing, using, marketing or distributing application programs conforming to the application +// programming interface for the operating platform for which the sample code is written. +// Notwithstanding anything to the contrary, IBM PROVIDES THE SAMPLE SOURCE CODE ON AN "AS IS" BASIS +// AND IBM DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, ANY IMPLIED +// WARRANTIES OR CONDITIONS OF MERCHANTABILITY, SATISFACTORY QUALITY, FITNESS FOR A PARTICULAR PURPOSE, +// TITLE, AND ANY WARRANTY OR CONDITION OF NON-INFRINGEMENT. IBM SHALL NOT BE LIABLE FOR ANY DIRECT, +// INDIRECT, INCIDENTAL, SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR OPERATION OF THE +// SAMPLE SOURCE CODE. IBM HAS NO OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS +// OR MODIFICATIONS TO THE SAMPLE SOURCE CODE. +// +// (C) COPYRIGHT International Business Machines Corp., 2001,2011 +// All Rights Reserved * Licensed Materials - Property of IBM +// + +var isNav4, isIE; +var coll = ""; +var styleObj = ""; +if (parseInt(navigator.appVersion) >= 4) { + if (navigator.appName == "Netscape") { + isNav4 = true; + } else { + isIE = true; + coll = "all."; + styleObj = ".style"; + } +} + +function refresh() { + if (refreshTree.value == "true") + parent.navigation_tree.location.reload(true); +} + +var numchecks = 0; +var allchecked = false; +var multiall = new Array(); +function updateCheckAll(theForm, chkname) { + var temp; + var alltemp = 0; + var formlen = theForm.length; + if (chkname != null) { + var allchkname = chkname.substring(0, chkname.indexOf("CheckBox")); + allchkname = "allchecked" + allchkname; + } + for (var i = 0; i < formlen; i++) { + var theitem = theForm.elements[i].name; + var ischeck = theitem.indexOf("selectedObjectIds", 0) + 1; /* simple string search on checkbox consistent name, you change it to deleteID or whatever */ + var allcurcheck = theitem.indexOf(allchkname, 0) + 1; + if (allcurcheck > 0) { + alltemp = i; + } + if (chkname == null) { + + if (ischeck > 0) { + if (allchecked != true) { + theForm.elements[i].checked = true; + temp = true; + } else { + theForm.elements[i].checked = false; + temp = false; + + } + } + + var appitem = theForm.elements[i].name; + var appcheck = appitem.indexOf("checkBoxes", 0) + 1; + if ((appitem == "checkBoxes1") || (appitem == "checkBoxes2")) { + appcheck = 0; + } + + if (appcheck > 0) { + if (allchecked != true) { + theForm.elements[i].checked = true; + temp = true; + + } else { + theForm.elements[i].checked = false; + temp = false; + + } + } + + } else { + + var curitem = theForm.elements[i].name; + //var curcheck = curitem.indexOf(chkname[0].name,0) + 1; + + var curcheck = curitem.indexOf(chkname, 0) + 1; + + if (curcheck > 0) { + if ((allchecked != true) && (multiall[allchkname] != true)) { + theForm.elements[i].checked = true; + temp = true; + + } else { + theForm.elements[i].checked = false; + temp = false; + + } + } + + } + + } + + if (temp == true) { + if (chkname == null) { + allchecked = true; + theForm.allchecked.checked = true; + } else { + multiall[allchkname] = true; + theForm.elements[alltemp].checked = true; + } + } else { + if (chkname == null) { + allchecked = false; + theForm.allchecked.checked = false; + } else { + multiall[allchkname] = false; + theForm.elements[alltemp].checked = false; + } + } + +} + +function checkChecks(theForm, chkname) { + var checkednum = 0; + var uncheckednum = 0; + var formlen = theForm.length; + + for (var i = 0; i < formlen; i++) { + var theitem = theForm.elements[i].name; + var ischeck = theitem.indexOf("selectedObjectIds", 0) + 1; + var appitem = theForm.elements[i].name; + var appcheck = appitem.indexOf("checkBoxes", 0) + 1; + if ((appitem == "checkBoxes1") || (appitem == "checkBoxes2")) { + appcheck = 0; + } + + if (chkname != null) { + var curcheck = theitem.indexOf(chkname.name, 0) + 1; + + } + + if (ischeck > 0) { + if (theForm.elements[i].checked == true) { + checkednum += 1; + } else { + uncheckednum += 1; + } + } + if (curcheck > 0) { + if (theForm.elements[i].checked == true) { + checkednum += 1; + } else { + uncheckednum += 1; + + } + + } + if (appcheck > 0) { + if (theForm.elements[i].checked == true) { + checkednum += 1; + } else { + uncheckednum += 1; + } + + } + + } + + if (allchecked == true) { + + if (uncheckednum > 0) { + allchecked = false; + theForm.allchecked.checked = false; + } + } else { + if (uncheckednum == 0) { + allchecked = true; + theForm.allchecked.checked = true; + + } + } + +} diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/error.jsp b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/error.jsp new file mode 100755 index 00000000..61baf092 --- /dev/null +++ b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/error.jsp @@ -0,0 +1,156 @@ + + + + + + + + + + + + + <%@ page import="java.io.*, java.lang.reflect.*"%> + + + + + + + + + + + + + + + + + + + + + +
+
+
An Error has occured + during PlantsByWebSphere processing.
+ <% + String message = null; + int status_code = -1; + String exception_info = null; + String url = null; + String method = null; + + Object myReport = null; + + //ErrorReport is an attribute that is set in WebSphere + //if it exists we will use it to get information about the error + //if it does not exist we will use the attributes specified by + //Servlet 2.2 + myReport = request.getAttribute("ErrorReport"); + + int needInfo = 1; + if (myReport != null) { + try { + //Using reflection here so that if the class com.ibm.websphere.servlet.error.ServletErrorReport + //does not exist at compile time there will not be a problem + //if this class does not exist we will juse use the attributes specified by Servlet 2.2 + + Class myClass = Class.forName("com.ibm.websphere.servlet.error.ServletErrorReport"); + Method myMethod = myClass.getMethod("getErrorCode", (Class[]) null); + Object o = myMethod.invoke(myReport, (Object[]) null); + status_code = ((Integer) o).intValue(); + + myMethod = myClass.getMethod("getMessage", (Class[]) null); + o = myMethod.invoke(myReport, (Object[]) null); + message = (java.lang.String) o; + + myMethod = myClass.getMethod("getStackTrace", (Class[]) null); + o = myMethod.invoke(myReport, (Object[]) null); + exception_info = (java.lang.String) o; + needInfo = 0; + method = "Using attribute of type com.ibm.websphere.servlet.error.ServletErrorReport to get information."; + + } catch (Exception e) { + needInfo = 1; + } + + } + //if needInfo is set to 1 it means that using the WebSphere ServletErrorReport class has failed + //and we must get the information in the standard manner. + if (needInfo == 1) { + //this means that could not find ibm class. + + Exception theException = null; + Integer status = null; + method = "Using attributes javax.servlet.error.message ...status_code ...exception as specified by Servlet 2.2 to get information"; + //these attribute names are specified by Servlet 2.2 + message = (String) request.getAttribute("javax.servlet.error.message"); + status = ((Integer) request.getAttribute("javax.servlet.error.status_code")); + theException = (Exception) request.getAttribute("javax.servlet.error.exception"); + if (message == null) { + message = "not available"; + } + + if (status == null) { + status_code = -1; + } else { + status_code = status.intValue(); + } + if (theException == null) { + exception_info = "not available"; + } else { + exception_info = theException.toString(); + } + } + + try { + url = request.getRequestURL().toString(); + } catch (Exception e) { + url = "information not available"; + } + + //output is all done here. + + out.println("

Jsp Error Page

" + method); + out.println("

Processing request:" + url); + out.println("
StatusCode: " + status_code); + out.println("
Message:" + + message.replace("<", "<").replace(">", ">").replace("\"", """)); + out.println("
Exception:" + + exception_info.replace("<", "<").replace(">", ">").replace("\"", """)); + %> +
Please Check the application server log files + for details...
+
+
+ + + + + +
Plants by WebSphere
+ + diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/help.xhtml b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/help.xhtml new file mode 100755 index 00000000..d27f39c5 --- /dev/null +++ b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/help.xhtml @@ -0,0 +1,100 @@ + + + + + + + + + + + + + + + + + +
+

+ + > +

+
+ + + + + + + + + + + + + + + + + + + +

Help

Plants By WebSphere provides + limited help support. See the sample docs directory for + documentation on the design, building, and installation of + the sample.

+

Debug mode has been tied to the JSF project stage + declaration. Debug messages will be displayed when the web + app's javax.faces.PROJECT_STAGE context param is set to + either Development or UnitTest. A value of SystemTest or + Production will turn off debug output. The current state of + debugging is indicated in the check box below.

Debug messages + enabled
+

If the database becomes corrupted for some reason, the + button below can be used to delete all data currently in the + database and populate it with a fresh set of data. If this + does not work, stop the server and repeat the prerequisite + steps found in the docs directory to unzip the Derby + database.

+

+ +

+
+
+ + + + +
+
+
+
+ + \ No newline at end of file diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/index.html b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/index.html new file mode 100755 index 00000000..43371796 --- /dev/null +++ b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/index.html @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/login.xhtml b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/login.xhtml new file mode 100755 index 00000000..334f3c38 --- /dev/null +++ b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/login.xhtml @@ -0,0 +1,135 @@ + + + + + + + + + + + + + + + + + +
+

+ +

+
+ + + + + + + + + +

Login or + Register

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+ If you are a returning customer and previously set up an + account, please enter your e-mail + address and password below. +

+

+ +

+

+ +    + +

+

+ +

+

+ +

+
+ +
+
+

+ If you are a New customer you can + + . +


+
+
+
+
+ + + + +
+
+
+
+
+ \ No newline at end of file diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/orderdone.xhtml b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/orderdone.xhtml new file mode 100755 index 00000000..c87f14ba --- /dev/null +++ b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/orderdone.xhtml @@ -0,0 +1,80 @@ + + + + + + + + + + + + + + + + + +
+

+ +

+
+ + + + + + + + + +
Order + Completion
+

Thank you for making your Plants By WebSphere purchase!

+
+

+ Order number + +

+
+

Expected arrival in 5-7 business days.

+
+
+
+
+ + + + +
+
+
+
+
+ \ No newline at end of file diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/orderinfo.xhtml b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/orderinfo.xhtml new file mode 100755 index 00000000..709f9b57 --- /dev/null +++ b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/orderinfo.xhtml @@ -0,0 +1,516 @@ + + + + + + + + + + + + + + + + + + + +
+

+ + > + +

+
+ + + + + + + + + + + + + + + + + + + +
Checkout

Enter the billing and shipping + information for your order below. Select 'Continue' to review + and place your final order.

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Billing Address

+ +

+

+ +    + +

+

+ +

+

+ +    + +

+

+ +

+

+ +

+

+ +

+

+ +    + +

+

+ +

+

+ +    + +

+

+ +

+

+ +    + +

+

+ +

+

+ +    + +

+
 
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Shipping + Information
+ + + + + +
+

+ +   +

+

Check here if the + shipping address is the same as the billing address.

+

+ +

+

+ +    + +

+

+ +

+

+ +    + +

+

+ +

+

+ +

+

+ +

+

+ +    + +

+

+ +

+

+ +    + +

+

+ +

+

+ +    + +

+

+ +

+

+ +    + +

+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Shipping Method

Select a shipping method below. + Your order total will be updated on the next page.

+

+ +

+ + + +
 
+

+ +

+
+

+ + + + + + +

+
+

+ +

+
+   
+

+ +

+
+

+ + + + + + + + + + + + + + +

+
+

+ +

+
+

+ + + + + +

+
+

+ +

+
+

+ +    + +

+
+

 

+
+

 

+
+ +
+
+
+
+ + + + + +
+
+
+
+ diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/product.xhtml b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/product.xhtml new file mode 100755 index 00000000..8647dc73 --- /dev/null +++ b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/product.xhtml @@ -0,0 +1,138 @@ + + + + + + + + + + + + + + + + + +
+

+ + > + + + +

+
+ + + + + + + + + + + + + + +
+

+ +

+



+
+
+
+
+ + + + + + + + + + + + + + + + + + + + + + +

ITEM#DESCRIPTIONPRICEQUANTITY
+
  +
+ + +
+
+
+
+
+ + + + +
+
+
+
+
+ \ No newline at end of file diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/promo.xhtml b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/promo.xhtml new file mode 100755 index 00000000..ff63de80 --- /dev/null +++ b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/promo.xhtml @@ -0,0 +1,170 @@ + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + +
+
+ +
+
+ +
+ + + + + + +
+ + + + + + + +
Tips

Preserve + extra grass seed by keeping it dry. Tape boxes and bags + closed, or seal them into plastic bags. Be sure to remove + extra air from the bags. Store all seed in a cool, dry area + such as a garage or basement.

+
+ + + + + + + + + + + +
Specials
+ + + +

+ + + + Bonsai Tree +
+ $30.00 each +
+
+

+ + + +

+ + + + Red Delicious Strawberries +
+ $3.50 (50 seeds) +
+
+

+ + + +

+ + + + Tulips +
+ $17.00 (10 bulbs) +
+
+

+
+
+
+
+
+
+ \ No newline at end of file diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/register.xhtml b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/register.xhtml new file mode 100755 index 00000000..528d1663 --- /dev/null +++ b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/register.xhtml @@ -0,0 +1,332 @@ + + + + + + + + + + + + + + + + + +
+

+ + > + +

+
+ + + + + + + + + + + + + + + +

Registration

+ Enter the information below to set up your account. This + information will not be shared without your permission. With + your permission we will only share your name and email address + with our trusted business partners.
+
+

+

+ Required fields are denoted with a red asterisk ( + + ).
+
+

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
Login Information
   

+ +

+

+ + + +    + +

+

+ +

+

+ +

+

+ +

+

+ + + +    + +

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Contact + Information
   

+ +

+

+ +    + +

+

+ +

+

+ +    + +

+

+ +

+

+ +    + +

+

+ +

+

+ +

+

+ +

+

+ +    + +

+

+ +

+

+ +    + +

+

+ +

+

+ +    + +

+

+ +

+

+ +    + +

+

+ +

+

+
+ + + + +
+
+
+
+
+ \ No newline at end of file diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/1x1_trans.gif b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/1x1_trans.gif new file mode 100755 index 0000000000000000000000000000000000000000..d6e9b014cef6741099e49b0427b487030f3d224a GIT binary patch literal 43 mcmZ?wbhEHbWMp7uXkdT>#h)yUAf^t80LeHoF}W}@SOWla!2~=2 literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/accessories_birdfeeder.jpg b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/accessories_birdfeeder.jpg new file mode 100755 index 0000000000000000000000000000000000000000..9b99836ab04349fde0d4d577b298405c42617c07 GIT binary patch literal 70368 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

9*3e!#pu1NWs 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 S<4%v49b73+75V(Qb^qC{bsJ*< literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/accessories_birdhouse.jpg b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/accessories_birdhouse.jpg new file mode 100755 index 0000000000000000000000000000000000000000..c062089aa46e101e944ebfedd500f5d7d09606cc GIT binary patch literal 74635 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

p;{-=m_NmKkpn5S`KN2vLAJ?>n_C$sP^ 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 literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/accessories_bulbdigger.jpg b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/accessories_bulbdigger.jpg new file mode 100755 index 0000000000000000000000000000000000000000..e156f93cf8bc9c6672264d4dbae751eddb9066f9 GIT binary patch literal 75023 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 I^7(cD*~2h36aWAK literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/accessories_leafrake.jpg b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/accessories_leafrake.jpg new file mode 100755 index 0000000000000000000000000000000000000000..09f832a9bb3e05f5dbf8230f905c7c872812423f GIT binary patch literal 74032 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%0D2NfbT;&=zfZ%{+nm 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 z z>;S(uJbS#6sa9Hoq*8{Irvl%W4sp{>Dnt@Rk+q6c7CZs_D_Ugn>*nQCwR1fo*jX;U z-H<&F?C2i;%xx_F6NVDCs1Za({&|meT~eIb)xT5>7LzK zfNBG2qYuc?AM^Dj@~fBH_T;u>qSo-GPvQno5mwOm#dDQgvHY97zhG@Nwxm~)(6@|!fTj{chojKhH6Kl;5wc+2bJwCfExrx1F`XLZF5?#w$Qi9B1?M>gBeka$4Ts?)qxTn1fl@)DAR9s`NcqvW)El zf+IJYC$|^;eL=Yf>@{;8=wzmtq6BA%jXFHrB}C*+s#waACH>(C$g5n)0Y72?09JYu zav2j1>EkL+nKeqDo1G=d)Wc1c7z1yufc~S~GP5qHKA+(K053_bg3f4!Yt%po&p9>W zO4ms8=>t)imU?*FGbC;xoV!R7JaF+0vO6(LNC%}Xcwzl-?7JqKj}Je~p*V@*xM$TRZMIFm0BQ+Vl543npE`sn z)TaZExt!CAd8KNQ((7rL#z%xGL|DXaV-+fBczTjPw6QvlC+*AZ_t)-szK+AeQoU%li`D2IX~ndv!lx{`zqo|xXQs`fW{ofbO$)i>T$!AKwNpw=X2k3nr= zbrlG8h8mXNU+Z#xhh=)P3&0+vi&&&EMAE3#%0c@Df6bqt%cN#TsU42|gp+=@A!;%3&>RnI)S1m#LdEg%!B|IDRMDFhfuR2wXSSa8p$*^;8Yq9^?qD>H46=` zjm`CcQB=3izC-839-Ur?!o7nQE8}Nb<6gQ7T&_6 zPZIihxE8Rtwf8l7Wc~p_KOigo`o&%5@5S6NC6TH;OnTSXKRzEmj0R6?Xo4vf>SQX4 z^THfdrlnvCBQq(|tEk)5POeS;rqbs~H7W&j{tlBvaaPLUubl_a{ejXdye%9tJu!M^ z4IUyr}L*lhGKoZDrQ8-!$nIh zlB*=pDQyaxtrM)S5j8i~$5VfgKJ2l{T9+Of#X5F0eAJMjR0HMYE7UI@Bm1Z0)j{L_ z`Rlf+wd(%vf53k(zb36*{{UO_^yl0D1ilqKK}}pgFZCbtd34<_KBMBth53AS`#S&B zvf6y2(&aMs4_}OpCC_BhgFH!DOtEEWcazAxETD}+t_dso{A0OvP81@z`+k4wG#zBz zXiPEcT$LO=@%+Ef(%L-jV2LVX$WqGOgA1QtsA7?Y5k&yWr%x}H#r?3TioS@lg_53|_>9V7h`UCsRU6W*ZX(tjQxT~C z54S@o1hkkV*Y*Sa`esCvQlmqI#8cPM^ys-N3igs@%;Blps&#}wxGa>SO)evO7Ivq2 z3Yl9{*m_hSp|JO5(19ZjMLuNazm-4Yv6}RqVVQKqVqzCHBoCcG&(gWFQsZhNr>D>0 zUOIYYjp@=UI)6U?%seI-T&n|=Wv{27xq1P1l;;qv3tMig~o@HV3L!4;

H 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 W;9K~fFO3~MI{ZSvAMLM|I{(?K3qD!^ literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/accessories_shovel.jpg b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/accessories_shovel.jpg new file mode 100755 index 0000000000000000000000000000000000000000..5bd8caa1008340268546ed3cffbc2703c34f65c1 GIT binary patch literal 65409 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

(eS0d!twq^XP2zuIEWon?!X- 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 literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/accessories_wheelbarrow.jpg b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/accessories_wheelbarrow.jpg new file mode 100755 index 0000000000000000000000000000000000000000..2302d40edc169575ca16a0b0d9e6409bfb673d5a GIT binary patch literal 58439 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�fx{o}#@(ZCt&B^L@l!Pga8A%dB0b1h1u1zjL8KxT~ z@Z%)|SuvLUfIzopvz=;q*N6x%Y4uEq^*AhIS_Y+Vt zOb@oT1EI4XYZ8+e0?wH4H9FVsAyR4Llf^1|X({HH#b{8L)hejCEx`i!Y1NuUAc~Lj zdH(>bk4qzH)pTja1wp2LEB>r>683*+{{RTZRLzMZT*guwxZ!gjqLPvY5S9y|%2Hbd z1%TFci(2R1l#&jgi|q6H=Q!yU@+t?@jYB`+{{UAGtJ5Eq-hGp~8xc+SIV|Sks*06q zJg#7*rlw$6%p5uJ#~5douDpNAKGa^%Yqi!wtH=>(`b z2A7ja^j@+)$7`NO6582#t^WL!pV})^L-GKAT|WJeRv%HNp`O>gYc!ERHXsdf_{(s9 zzhCR^FNp(wHXoIL%hB)AZn0piWV3B)Y+KAHjMpU#$m^YGw_58Sx+0h>5xN@G`ZzbO{-rMa= zlmJ&&&cnddF{ed8gU#a^>6ZS>`z7 z-&~>kYl~$9NZExI*5QCvD_@EuBDV%gbUAdl@{XX{)U|cn`g!XsDY2BfCyRRI>9GQ^ zRM`=*`$`v&B|S6TzM0UeBH{jv>_fc!jk!ny#ACKl0ies8`d8QGOmRJ6w$1H7F56sd zFiUi-bh6DQ!)C5~e=63TLGtwKO0n22tx&^jZvsFl zG@{af?CEh>y|pyocRfuxlMfwa(uXq9DuC8eiZFN_OZ)- zsz2EwzUS#;BwAaK7QY;s{gJCsf3|PSs%-h&@XxtEEO$QHf0A9Pxqe5~<*2B4ZYy$b zY|i4W*&lCTS@!kx*e$zREhRoI?VQyyr>IEOF{Y9kK|w02iJJAT1MS;gg}ss(>a7wD zZ%>I{LNzfym8T4KH~V4ByrItgyK~ID-QE55F)ju0H z_s9K**WIy#ZQZ&s`3<|evU%z)(^0rtD5x?bIxMWT$>oWjIM^ZuQOVSso$P|%4-|xq zQ@6ID`F7I-%gZ#UQA}ni#oXzrUC#R4l1L{x$tI?zr2gFWrtDwkNATZvtyNcF^`0}M zH$6HR$7Q6M-0{kLH{K7B?NKZ*R4(TPVulNv>1kL2L09aM_Ua}% zJB*Co4PVX=H6|Q>NBh^#Isa+Ue#@u@>6gSZ?^ncm^04G^{?xow1 z32%RUmZZGb~fAx0Z*;7eW^w_=69V*xD4aA_c3XC4) zpfwn5oN_|GO)*dAjZNf@4Z!z+k5g?XY4ElW`#;Ql`p6Dn_Xla;p^V5ulv7hBH7#`4 zTtF15auvEb+hF4Oo ztN|R4Y_Xx!BGJ7MLootf!61c_TSo*MWKx+@4Msu8^9GbXTHnS00Os@ZXQQgIcn-qI z4)fRvSB{E$9rIT^?`&-Z5*2vx8{+b0WSAs{l`@Hth?N0+V&~gsbkWe(nWrC9$IJPF z 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 literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/add_to_cart.jpg b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/add_to_cart.jpg new file mode 100755 index 0000000000000000000000000000000000000000..51b0dd328df4936e4dd06d5a85e063594a10f1f8 GIT binary patch literal 2826 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 G{eJ^w=buyn literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/button_add_to_cart.gif b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/button_add_to_cart.gif new file mode 100755 index 0000000000000000000000000000000000000000..d46ee435ae78e8fc66a99166d2d64336e685d143 GIT binary patch literal 631 zcmV--0*L)bNk%w1VN3uU0J8u9=+9-ktpaEDI0*nEGKtK*0OcaR;7#IwNfgsRm6bcJMN`~Px!H!TKX3?2m!3IqlOiHnUcg#=0g1PTuYL?s25 zn4W6^mWm8bDqlMYb1W}Jtb8+kUZ*QEh;p*Fn*ebnyMVyKbtDokZ^FpQErNqy3qgAT z2~k671TsV>+0wV1BC{xnn=C1O%+Uk_ObloWSWB1hQ7Kda3;_iW1_~rBN!daaELdW| zfrm4wY>fFf_!-$m0f&$}#3aHSdc1#olhqP%QVyc`<#e<4r(JBGDc^RNY1=kh^ zk0sa^P3DbPr_4odCL(}7qQvxi_19M<39}%Q0t`Sg^a2Vig%eFisJ$=KEy*O(M9{65oh=~_| zU}%JoQJ&_vj%W=?9cnrb(2!XdcWYXxYk9{ z#_06dfP(=>fx>|&Dk=yH$Kzhz2k;#SO#}fBf(ji$Uu`;OBP(?VBP}37K`RN81PcpJ zl5Z`FUTu?Brl+W>s;jK2Yyyyvt+TYXrZ)mPAa8F63>ammlRIV~QNkZ;G8H1Qn@0|EMo@F(rulv=@p zmz7D99+ap?&{_+EXGU$9NU>su8lTi?+=z=FFODF?(MXu_F{H_WjZUg01FaDyNe2Q1 z_!J;ZC>M2f%sBYM1v`oE@EJfbV9tjlMnHXBs51p92bm&rX}Rmeri0ZMG?+%HQvn4A z77XAT76DP2!a6YpDiDCVBRN(iO#)z3Ct?Yb81T^mK@o3F6oO&2i=@5+1rQ*endCrU zu}O|d@xcHrfM1E-O$|y9D@mXD;5B@xPv+QqB{vInLE|388Iuy3$!Y4CRF<6o8N{b6 Y*-ijamoaKEy*TSFf&X3;8c7Ix zN!d7#=%k)u#109_pj-oqb9$ZM?QvizdWr*J5ikT6j>W-I2oweiLtzTGz&=zl1>K!2{V;k z4oOr=0XGVe1qx$QTYeuwi;M;&OK8z(dHUPV^FM>TDx`~K~%FBa427rin z%+rT6uFeGq0}BfSQ%pR9(X=Z}(mJ-aay-4jt%^bo2L#PL29%#rSOIDU43kB~C_wNc z0D}kSo;YZO!`QEDA9k?tm7sx)iy(TeV8Khq1B@5{8}wiiEaZzDy&xv5*QXDoK{H_N z0w8NgkC?m!z1Sq}9fzMlgZ>O;hnmqsG9*Y0bhN3nhCzBdJ^Hezk09cvQvI<*r7v1l zngFvhv*=AmBFWlnz&6JWi|*KRe7DF0f-gEWnX_XRmIre&M8tAy(aGGEUOlLZ_Lspt zG>;iHK_CSR6N6R=oH25*$&)9lBxRig@5GENVp=k3w8mQ-1y4pSxGRaFhXI|PERd(f zosV^1Nkp1AU;u(q3D*?p=B*Kf0St0`d7$7q0!RjpD}SDaQP#vn>!5IX5=BE_G)uH| z7cG`xAKy#6ZFmPRt(C^qf9Q3yqK|g#tWd%qXyD~B8h>vAv&nkwA;Q8YInV@*G##9y Ml~%AYB0vNHJ32K38UO$Q literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/button_checkout_now.gif b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/button_checkout_now.gif new file mode 100755 index 0000000000000000000000000000000000000000..d8db2088405fdf9526699d953f21a31cec5ca3a6 GIT binary patch literal 763 zcmVNk%w1VP60n0J8u9=Z@ zqX;HwlLBm50;Pc(vrL0C3iG?(tQPXAK$4>gcX%jJiUVK~00b7(L&6bo2o#3GG@u}G zAAtq}VL%)V2kb#ArUe8`g+NgHHuMI60#y$PJT59pN{ft*j*pO$i;6mumY0~AC6pp1 zcMdo}3sFxv0S5sIIHY3$Q2-86RR#)T1quKN3kPDR0tW&G26rK(1`clx1*w0tN1Q65 zfk2@W$2M}g#>mDWm%CD@tm?(N_bL+J1I_Kh{014=c>0t*X%wdxkc zn+qzP^5GcbLR*bHZ+zXjv4i3dM$keuI6wfMs!^{0uzWd%pa26=2N(pPWys0{15}2| zkuv1YmO^*JFmM2i!L0=a{zYk-ZXdseNWCotGC~>*RY(Wvm6iPOD+^WtzJPaNF9h%b?-kukAj z#Y7r!<+9Qf&w^;zCFtUfMuX1@6NodhgNqR^^Z2IjI*tYc0>VI4iJ4C|h?s{woAXwM z;+;XB`1~+z!eYf|MwP@NGGhS)j&Go=Y_kgsl>j~+5OCuJ=E^HqcGVfiXMvfV)Hxc8 ziGV>E0S*Yp^%}H_4un?#{F?18{aG3Dn#K);0XfB-MWR7NZ(A^=JNEn-o?i3%*nAQQp`K!5G<| literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/button_continue.gif b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/button_continue.gif new file mode 100755 index 0000000000000000000000000000000000000000..b10e0a8ab9eba3f2aff2cefed7af04792ccb37cb GIT binary patch literal 592 zcmV-W0{CR>F>rem*}nA^8LV00000EC2ui07C#906+x)@W@H4y*TSFf&bo80HOjY z!#ONKiheA~7Ab6=Upf>b=mVW!Yd}Ca6b%OfkVr5D0fFG*c?bppgJG&5EV0By0SX`_ z1`J0{2t2Ug@VI>L34TWOynb#6p`iu?Hvk1s1P*})4gv%QPXULDV**MBlOA6Nhb?e@ zJ_Be24V;`QBO?rWEeeAoF(|2ou{(sFZnbNBy1O0)5_luIyu)+8w?3zu0S^z5q6G>( z(WMQbC53mB5BF(VF#moQ_- z^rMQHO_y$Hc)ZC|+<}awdJ6T?aj4NYY(fp#BESQRX&6BiVzmPvtrI2|oV-z>8p1an zO(j4O2*8tAFj9?@B>5kLVH zyaWab={Ukbl&>Qc1UPsYAQb>s76_cunI91XjN|?Dveu`Nbu@|u2#}yDwg5(+e6~Ua zx4nH00u(UNjBpCVw7ucbwu( enqIxB7I8V@5vfXRuFNJjg6J^!s8C-K0028$W94Z8 literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/button_continue_shopping.gif b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/button_continue_shopping.gif new file mode 100755 index 0000000000000000000000000000000000000000..068db8e3aa4bc85c250defd31b9562c9c6c60de7 GIT binary patch literal 886 zcmV-+1Bv`cNk%w1VQ~N(0J8u9=z9BD4q` z1`mTcArQO<2SGP50LUKzMeNWp0Jvu%Z4Ltp4hjQo4PFBV0*iExZe?C$k7hYi08yHq zo}ZwhqNAjsoJXaps;jJ{r$~%=L^X~Icm@gq0)BJ?3b+Sh3IY$o0fH*EFH8sp4=ZPm zW+uZ5A-cZB*tW(8zrG<4Z34%guSPX5G)_P%I5r0fL`yCzEIB**PbMz%A<*s==!us= zU=Scj;w)Gopq?g9KUztgNRia3h!rzxtay&yfd>u$1}q#PU`LA;2a^CW(1i&?kL`TC zFd(u}0yr#`u;_=%#;_;#Vh}OX(TRWp2xEX*fgsly0A+5f5MxKciaKrHY#~QyS-6mT z&`{aM0M7#kl0qODcVcbUGQk#{dGH|76A?v|*4WE8-H$!~dcKHv5E{(CgO?>a;2>*^ zHv2@ZP*5NMWozaLXo4p>;Xj1$OakGVR7ON0>)4e>Sp+65)kCFxm`%I3?b{k&Z`{p0 zRTRIygA4y8VeiY~$cN`m&YXANd=J9>i^sXMJimlhC}A=rri$nW7?(3Fn(@mYD3_qq zO;od#9nJh)JDwUy_>XS(98?|C1cF6roDqZn13mPY6lu6*;@xrWc_P45`YFJG9L~`3 z9~uIX6fnR52!!_l0s~m#z>$<>2nL8Mezd>oocKs65*~1{;l_yr6cAp9bzT9f z6>*dV*O*l_poc>ZzNa4y2`q74KIjxE)PCo6R^EB_by{bl#0cEU`k6ZXb^0D7D)V!YA^8LW000jFEC2ui01yBW06+wF@X3dYU`!M=9|J}pAcmqC z0FW37gA8db#{*Z)I8aCjk;jC?LjVXY5`cz6Py!$p01bc`M9o literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/button_more.gif b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/button_more.gif new file mode 100755 index 0000000000000000000000000000000000000000..c20f0f30849f25899981734c0fc574c9f5d72d28 GIT binary patch literal 172 zcmZ?wbhEHb6k`xz*v!E2|Ns9N@6M#nNPG77^p%Hu&fPn=?d+1LZ%%#u_Hpg;c?=jp z@h1ydOb0}Q%y3|d6gc6zdT-F21FhnB6cZwi3SLa;QBjzov3!$mKuuiWZnjrP*=D(3 zc-;_i@GkH2+m@aj{fz|*EUX>Z-ilb9VmaI0@ZfhL$Dva@-ndTQHuna@oi3r3VgBDd IyBHX(0oJoe$p8QV literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/button_previous.gif b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/button_previous.gif new file mode 100755 index 0000000000000000000000000000000000000000..e9e7d97a868096b8cc968dff9e3b1403f54dbb24 GIT binary patch literal 173 zcmZ?wbhEHb6k`xz*v!E2|Ns9N@6M#nNPG77^p%Hu&fPn=?d+1LZ%%#u_Hpg;c?=jp z@h1ydOb0}Q%y3|d5;)_jk#}LGf`;u^**sv J>@Exp)&LlqMsffE literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/button_recalculate.gif b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/button_recalculate.gif new file mode 100755 index 0000000000000000000000000000000000000000..d5ff11814629b3d3f4a172df241869b938a993a0 GIT binary patch literal 618 zcmV-w0+szoNk%w1VN3uU0J8u9=S_TfEHy_svij?A3frA`$?c6ARqt;hz??bAP_8yguwvt5EKFhC$xbyOalOeVmJyo zmFrEn*IzQ1!K5~+K@#(yPndSwU*Pc141 zu&W>{VA3lr);1w93DK^l9?Bsy0SpKRE?NR!3Jih{FbG9p?}7J`k0t0eUr%yg4hRG23vuGS)d5kKhV+&+NBTZ<*MCj0im6xfkU_*5)M65SS zg}_i^KwZUUEU1?Q1Pso`_o)-`sqG&&onE$VrvDXF{dFiEa5-Y5HWm`pT(ZN#>OGOC60TBQI EJ7E^_3IG5A literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/button_register.gif b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/button_register.gif new file mode 100755 index 0000000000000000000000000000000000000000..046a9fb211e299e7ca526e40ed2bd613f8847d76 GIT binary patch literal 487 zcmVEdwy*$FDT{h%T!iMW}0T`?#Yyw zf^2VIA0Qe&KQ`#?&mSKhA^8LV00000EC2ui06hR306+x)5Xniay*TR&y8nh3CST%w zfI*6#W0J|*g(2EWwkQNZun#-KATT&62EB&isAvEhM_@o02sm>n9Cpj?da>HCcsve& zPKMy(x+EZbg!n)K7{~{O10khw3y*Fy4k{mJIW#360S65SJT4w2H3l^uGF@6BCuE#t zl@gUHougtQhBGMw1qBa09)l+(}pX^fdjXcM5s7n2garW18m{j1u?;|1p*YD zXtaRA5CH@PEMWFgnF0pNo*Y>4U`QT4oBVN1MWg_-0N~;f5zt_Vl^62Q#XkTzy-(&AYuy=8C9k`ln7Nw d8~#e5A;?8+VKgiXM_&1=lcCKDIU$Gu06VZLx0C9wP!EdvvEG;>sHJ_V*SZznJ_^T*WQ=T{0r! zStWt}Ol(4kiQ7UB?H1s2W+)p9O9BkFS`=`c3lcbzM(}6=z>u>{bQF+WpumneJC*`G zq=R6h6SMJo_Ep!O36qgQ*ddUTKEy*TU5H~1isfTI|m zXM=|2inb{kHlw;qE^q`oV;~3J0KB`vKoA21-bFIX$JDzZ6m27AQCc*6h^$REqb&d$vS zueS{aS`P@e31TcKiiaOIoSRAn3j+iPx*{}A>nyk*(;x;7Uk*@BL);8bJWeCFNU;}W z*#dkf0H7&C?g1fx{Q>|9@Ia9r0V@(%97aQ9M@7H?EXKRF$$&``zmRp>6i&rSjhk3m zWchAh9b7Xfcy7Ne?B(ux3( zQs@)`ql6kJaMS>uF;*Vd7@0)y;00nyyjCOD3=05EApry?Bc;>HCgIMJHisb?oX?4Y z1q==>Sg>tCrUeKbB$48z5}^;3Ovo&QIa2`ymMJyB?0|uq0SJJMLt%3klE?q{&0Qj< z@DeFH4!}6zS|oAYdnrd+@<7Ut!WVlr2!O8N^ap>3XeO{_b#Bm6gco1{W|jW4uTJSE!ypAN>;)i3SY~Ofgk#$QcTW-0~6G^$Sm5@&Th10?;8Pzh&gVD92 W(@cgfMPN5^yz-P*AhKj%1OPigcKb5` literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/button_update.gif b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/button_update.gif new file mode 100755 index 0000000000000000000000000000000000000000..1e2bda8911a9dcc50caac335ce568742934052ba GIT binary patch literal 473 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 bjrueBixSfbTE`ntc1A80-Cbt4;(!0y1&d;m literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/flower_black-eyed_susan.jpg b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/flower_black-eyed_susan.jpg new file mode 100755 index 0000000000000000000000000000000000000000..61724b6940af350f551f9264f7ba3a55970d71cc GIT binary patch literal 65749 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

0wXvA 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 CTL+Z@ literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/flower_goodnight_moon_iris.jpg b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/flower_goodnight_moon_iris.jpg new file mode 100755 index 0000000000000000000000000000000000000000..565c69ed44325e44b867342a4c909564fe9f3ac3 GIT binary patch literal 50567 zcma%hbyQuk^XJ1|9_|!(cQ5YHhr2sG+_goDJ3JhUySr1|Deh39XmQuFe80avyJ!E~ z$+`FBW-`en_aynuOx{=Ce*-WTWaMQ4P|yH?#YY0Xp8|kV9_IEw04M+~;6H_c_j3TP zxP_CMCBUNZqXY^DfC~!)kBkNY(DMNRYU=<%5FG$86!yLj2n9g>{}c58C7Az1|63dy z3hIOV@%$gg|8M5K9{@xITmm*=pnw2qAQTJ`>U|K37yy6)!2GB2j}iQr;1LjE;gDdU zp*{u*{r_+Puy8Q&2+&Z7089WB>___O8up{chZr;z3@jV~h=mPL!9j^bg^PeG&M84H zh4+bzhF0>UJ1A&a7&ursctj*bl#iK$h5-O6IIv*FvEe|bE|i?#5+!i*>(!`mF)z(r zxg>wi?py^Ynd22SgcQzG7Zt;Qnp1a^3gxlvPafd5&LW=DeQ=74cwS>8(UCLS*Fb7Z}{oU*Sy#L#L zjjN^9G`{8ZSlu_jigmy9_>N|FBbDV7={EFy%2{=_lXeZ#3r(PN8`lcjKxP$^+J&CR zdaG@Z<@WU%$YtC9=~aGT&7p&UcNv0M&b62{Sh1nw9_q>`fhrSYVl&{7PYikS7-{aT4)WEkvw>+s{ZJl$#-#Sos_{#D|m1~Z%18`9P4u* z3CvWiHA{}8ttVBKx@ONhIoD~Lhv2lysE%pHx!zmaP0i-0?r*IiZMQ6XJFnP!;nW#z z9oLe+UiZOB5UJc#xN|+e5OM{1rJ%t1PopoLcr}+T`5@>SXp`dC;Z0ZPaLp=}8jSwzmvn=1L{hG> z14@F+Lgc^7n=umB=%`cYj_{3*b!2|dNfFUy!W1lP?JVETon$QasQVwxEVLzc-+2khS)GIsS-wEqE`h6fWb97< z4d0DO`%J(}2n>9hTbt4^d~<5|Tvn+((SQP6}eXhvH| zd+PYf1rEqAJT+-+pW0k+kv;Z18f>NZ3`3;7ZbyM; zDe|S){AHQcZ?HQp(X|xTN?C(oJpG0KOFn|7w?zxK)XkY`jA^7cx}AlJWWB&`jz;>%STM!-X`&MnL&FfjY!60wYX-3 z%jTu#i@*N28@6Z`&6oGo^P|F2LUbrY&Ep#So~Tp@bfr2C6!_me5cKnp&){4a1U$Aa zl~%Nw(uEmWNRf~q{7}k4>Z7Hqs^OQeIX&@RkqXt%vAAt!8*ZyN8RtLQWpe8Xb zeQ`;kyRmsWlEcXW_uFbeP?x>QyN}`=(9SZz@gx(nnPb;lQ8K}Vt8oH`nhr0AKF(`=y{iQ3m`_`LPwEZ=ZQ{fPkz6cEC3$szp zE4qF|7hNDx7f8Fk2Z|WG^_PXC)z}L;2N47w|JZF{@S4PQC|)ajUHy6_Bw<~PksJEj zU7O1o%VC-1vF4^a9L-c$@i~#J#QDr__G!S|T9Qy}I?+j~zWKf*;c&)Lt3Q$P*nguMNX{dU_)6+S?)Cs6|qh5u4TiKXefMhXJwt7d|wG~FMc@Jr`-yDrA zJjOX_KM4PYkt`Z7N+d(uQskwq<=AhCFmon}sa)y{OI3AP4o<_M!z_Oam@#!NN>e^! zh$2KW%UsEl4-t;BWhzj*qPxH3Uzw1t{HgQJ!Ohlp^C)yd$7*Lsyknu6cLt?ZC_qDu zhSN+Paafs_+XcasT+FKqRp#Y$(rPzlj^~{@H+DjmW`(uns_mo|XJ?`SokoZ7s<(`3 zs4lry3cbcG)>(gdzA25#~=Uu{tfbcZWt@cN$S&+n~0e?hX$79%vtEUufto z_U;h_eZ1huT78t>9z*WQF{#FD2aI+6m)TkQ*cT@~%*zR|Hewj^3sYVcg|sSlNe&Cx zytl()-^}XlXmVT2w9yQZrz%zj@o$WOT|mc88p%Ff@JzfRgu3E!Tqq>7UpN;NQlEED zUR1IxgOvifFh>VSsRv8bK1C-|L(b2t5Q8lD=uTM)#F@O8wAteA+%efQ7TDE#PZ6ei z<-Nm~*5?8OQXHF4LegDOqFtqAnFVg>ZQV3}xb`|s=|x~!*OPOSxgZ<{&c|PP>u`HV zDLQ4HUYf}>{6W6Wi*+p4)n8ZyGn<|d+AkSr1V)-Z{$(nE{dvS%yasdm96U0YE;?t# zsS`aCUvk}7DWZ_57xP`*GxsS5BZJN*?T}EWQ60oh1GBb~>f>%p)KXU=m*OL*v1GCK z^ekNamO&BCCb99fWC^UDcM+-mT9tFfC^cR z>g^{HbNQNr**4?r+{`%XTw^RX@2;JSVW85^Co3KJ7op;^*cye#dx-syFS-Gz0mSI$ zjsk99JASETXl7S^m7fy>a%X;Jw0A5MuxI-@>F)`LP#+K$IXu$1E8|5>&e>g_7sk5D zs8VO2n&aSP*%hu|@XD4zKjD9emuN9x*0Q(YX{yK~k(T>|b)YHe{D2Bf4(p?Wrp<;7 zkGM&%lG?(4K=RL6_Mjj89qaya1oNq8U4$)WveaXCdjHz@S4}w7|HT*D3f`6sD z-DAZtdG4e5*DGb+><%O{EL4m=iQ$tkc(;$0JC0X8d3bWr^AAwhTn_B) zheZwD5pRyDxdv&!ZfIxxamAJ)fZMrGXyEsLM?xbxVlZ_j#_}<*C>c2HkR?l42df*sb;l*8NJ6v+4??S>XjkmNkvTEVC*O{}d)4Pj6Lj@06O) z>JF^UU%yU)-OFb-w6yQ?QqiZIAEPwc6xB}}@~O=p8-!3fk`bid0m?1zdsXz|yu*^k zB%7@=x_`8--PhI2J71G^Hi~j^`OPz-gJ>eCbzm+eYAnpn2oeyaeCh8h^b0DO(SS-DTlyy;|tZ zc^1wX5g^H`$o|3sk>|OQU2~3@{s6fW`)3#%ePtbd7QxN6PcNe&gvDZc;i#x_utFM2 z8so3e$7*v55!d?bUr2X$t~uzr@EoglJz`t-^C^mpZ6xBPsb{-Efa_&MBQ{W?Ww22f zMMn;Px(1DT^yTc-cx7knB>BjNFampHr?rf)(C%?7c;u5cZ66%!ZcL5|>F+R=aLJm5XAIsHgQHKEY8~;8$agXfHx*hG9_kV{$o9ubev5z&*L;=MXm-Tzrib_? zECY9JpI8}-Ea`~jIEiXF9W@}o3cuWC@apoe9PUfM)NLLw{pBe|P^yn-URr|^RF&MF z&dj6y?$(RWFMOO8nr(PM>}robpe>#9#LJNtPZZZ7mFNljDK@e>X}~sywI^SFb#LpE z<9XkOICbCMw~Xx){#AYvg`mJS&lWAe zzj|?Pw0gjCtVTRgbmUJDbwDQAL5DSjIw9`UaCRO~T=C*=Kw8JpBd-X0iM--DkV>)m zaeHM=j=WtT;dXG0^8$v04WpoO>u^+rMWc6bRt|+OHH>GimMQpayzg218P%fsqRlI zwtJRXkt8mb&NkTQYr;?Mxej8hC1O5|`;j@el?*qm)*aUoeKGXzGZg|XL-=5IM_HpU zb?LFgdt!G;6Yqd#({`r(a;4!cx!HZ<8f!gAMeHA(E@vvB=#<4NC0-^b!f1*#({T0B z$?UeAo2sxOTsvLiO`e6!Lu;L3PnJLBs5C`Skc$<1DJc*6VROuA&K}|3h&Vo*HNk=~ z+=$V$l-lNZz>Ww86Yw>hM8(L@rC17mJ$|cUb%t$qeSY>=ZMS;{rC=K7^9sRlXz)-&&iN#4|r_<_Mpx z^9H){s>~|aHbXef8yyE4sFtWy?%3NZdpl#%g~=Adn%YdAo*|wgy}Io0fIo~@+u#*Z zv}Rj7ZE$gumZg@4R5($`mLB`a#yjAO&7?tXr@(^mK$|L+Ja$Pk+#ah(4dqhkaT1r*Y4MRPyc04&hkOe?%(uR zJ3m9|17#Bg!M7$|jm@M256i&{oXiDAr>aSSW6Ae1MInn3Pn(NpYtvliHBj4BqVh=} z0F8e1)mqosCE#+%{GO}_Pg4~$CSy4txN?8iwMj0^I=4_eWca;$ZMxIuL+ALeqCnP` zu9lit-DMMNtK(F+NYg;y(g3o*7}qpat)?SpQsH2I7L=ZuII0JpcL1oqn2tuF$kg2CukIIp zgWMZ45u;UeVFNr4BExtO8*#w{B!34V@g?zCj+`%uP0B99y9YlP5BkEp#I=8Ph1#+g zAbwbp?X7X~QX$l2^}^@$k9vRK0mJ%uLyuowPCM2bX7f2$$UjjFe9FPP+>{l87^=v^ zRR@Mv56$v_apAZg-cE9F8kIpisfazX3Plna4owsF?Dc#{>-Div zNK-9PAyztkWW5bM6x33cjl^q_JjbdIE(S%BXouF6e1cJ52AdqHp=Er~3I=CgCC+|& z#ponOe!Ya)l|}uv%&DGY^xMoEid>%9m1&ToOPIGdi8!192j)y_i` z;52BRq^rP;8kAjjsXpmSe7mHqxBQJFFdCu=qv}Jr2MhsYPmG7

VxaJ_MblfBjCm7^84 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 literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/flower_impatiens.jpg b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/flower_impatiens.jpg new file mode 100755 index 0000000000000000000000000000000000000000..96d2e675299638fd1da37e77568ab9986ad8853b GIT binary patch literal 47059 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 literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/flower_lily.jpg b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/flower_lily.jpg new file mode 100755 index 0000000000000000000000000000000000000000..c1303c5f0a3136aa1732be9d63f88f5359fd3ab9 GIT binary patch literal 59056 zcma%hV{~P~(&&kuiLHrkV`7^p$%$>76Wg|JJDJ!vXX1%Haq@ES_we`iUVE>-x~r?J zTE)+`&p!YZ83}0#02nv`VDj|DwhAW*?Rhrmby0C0%^;{M{`zXciw5(*Xq91iS@(f?`sKP><# zXb4Cca4-NY3gC+dNHB0n=r3X*!2XK^5(&@V-Y4rhf+3lWDO7@!$>G-P%(01!$i664@?wQ zC7<8DDKuUj#u{)=Vi!xM;D8Qo3@UPIHgz={R5KY$Dd9x>4<0B;7-%R6NN|WRI=@Ip zMT0>3&LYgJY)Fdkn9$HK!UjnaP(T)hG5>`-@OpQE`9{^aP?VfK82t|M34G zCcyxxUp>F52}rmuXz2eM9);v{1AzF&Avh`o>K6d2Xg`K&sSt5=AW1;u$$oCL=A%$~ zsOtNn1520bP$d`Uu(ku(T=)16-g-vP?=;6ek&=8N>ZnN*N<(Y3&avbRBqRX4%^mUM z(D$?lAR#Yu3i&4hiGCfBc|EG|0o$A>4L*`Av2wkk9UFvk-d_-U}&^dHy%GXD+3)KW>|!WYM2DNrlLXxIvh)m|6zr zh{!uUYXYy7v>*w_7aG2xObpB2St|xfOHW*oAh2Zs|G7wQ zJZNA&2dw70YP}_=uy4@4w{peH_FjIj%Eo;%3~MMP{cfGc`EpBQlVZkH{K#C_{gjnpO5Hyhh-g;u#rh zXK%RPY@bI>j^ZXm$>~^Xm^)5{Kv?OiMmHdx*v3Bwt9d7(G{sD&=1yC1(4oVlSm@87 zoqy3;Aq((uJy&Enh+1#F6m%!Kntc4KE$7=ENZGKf-<40r!1)6+N?s#%$wPt2U8a$= za--~OZBMWkJbY~ekE;_A)ox5=3G_D?`cIL{rFDpg-7g>Vd5fEt92(Rrt9W0GB=6CFDyg@OBs=yR$I-rx@b7t@MH z+9mbEc_X{tj(b7*RoBSr^V8!acR^eF`lNEZc1{t3iJ}xBm9>=$r&?j9O*VuZ~^E{R3 zLdt<7=t_hV31kdEXl&NH_ys#RU>p0jn3*cklLc*MqAfIp`bXc!8ae^l`n@U12B8w# z1#C0+NISuIifPQ;YWOd^1~cWqlRkA&QJwnFE0G6UUE8cC?qwVouJl5!$RgL7Z=+0% z^WSjq?K_;*kFXdjNp0=(tpxp4oM#tbJj0TjzB?O|^YFT_!skN{#mu2(Jjr*HZakwL z4+-)*%HS1iQ*oo32G(3@jgt{Ujx^v^*cZokvO^ACwN>N_u8q=0yu>_2Y!xnrBM;&7FD*Dn^___qgU2T0E$i&u@~y z5c1*Tbb6%@@@X%DoM%|m^ksb82g9j#&?ZJ#9lPoVoJQa+7-)U3!X`TWMrL1#g>k}Y;jA?UX zhJsumrH|E{AI18wH{*1H*E?K8my-<_v7%8X@^o^;<;S5*+~mWnUVl+8dx)WO;!98X z0L8{3F1i6bv0x@K(-{KsMT5Mqjc8gX8)$43qDD%eijR+EO@h^75UW#|9i$V zBl85JD)(gZj(jd%$y#n;V|-xX=HA2^%tb@wonf2N#-NiC3 zk-bEqNYL@tKlzZ>qbFAVKK=CT=*11!bL+_}FYO~=iat(i&tDwGiitFESSKw*bUz51 zO(IFaDP*$}oxc^v3rW|huvlbN5VM3T&j-u+gdz{pI}if6cpfmMR*_JjyR1qFE5iK@ z`Y}>pPfja7vj403r2cVe;7s*ko*+C;ffQAKFzn13_}nKFE@qAxm#$sNc#>gnX= zf`5yx8bGDdC8@=+46*BV5{R}1eV=Y9CX6k`V_ZnPc`zM*;vIDbRGLGW#N|PQlKyqR zn>$|L*{A)pJz`adS|}5@)%TWVyC5y?_$PqTu>zZ3mAKDN+61LppZaLv<4;J;n2B`? zKaU=6>c=&xz4(FUlAW{6vQqQKz!SstTR*ViGH&jB@y5X)=<`+Ze&CIrpItno3{eLRHSlKsfFPgJPphTWPw|_M#Wx>rfSC z&aBnjOpHzm8J8Ix3{xC9{f07o+8*h3%bPUQe^K}5U-OuPcnDCOhYv`Tb^>QrV_eVK+(3{jVV;xnVjbAd#Fdj zuSJ<10Sv_IcaLjq1$V1^#G8e=ED15GP^Gfk*#On#_3o&L@iR zKsW3_t03|@dJD*ZX#({je1J0HS$!k&7R82VXU+KQCe1Vo!T6HB;kWAc?IgNcC%7 zkRW`wY%Phxm}w{NsnoBTlKXgetW@zhU>1M9rE5*E&e_Pf4TcOPz zweYrDbP+zZVx0C(t^rGfT&UmnEpIW0ZDdUUNVVOKA6&;R`WU-DtZXaCj#X*!VzH_{ zC(cu;&ZFXfsNY`K@sw|yvT7U?7N#(C8%XiFlxqY&hNEt{n3KQh#-2(DL`tJ&C!I?h zZC}yuSFMDxqfsR)+@+<>ew6rLcaKJC!5Eh&-mL+l~SyPr|}O zI7U3xGR^YyuB5i@B%M2X!(+ay(ihE}(6IyMcFdRezqqH(^I;U}PByDUDk2-vO7!Z& zqMv|roojnqf>2iaJ>tlzsDz(|>fIF{H^X~Prt7|@Lkx-&Z16yaJ+cLu*oJ)s1phky zTVAtHBe&rFbDgHx{7!AAu!YG+a zMW_2Ay&W-p&=9pk&CJ`lqVu({>Tk7Dcj+@QZr~QOU(N@gNw_quH9Av0?nXWVF@G9% z_!K7$RI~e40V}VAQJQo`UWM;eG{7C@;YKxc6zgU|N&<_?^C#VQ;>N?i8gpMZm&uq! zPUFUi<}MbCy_!16VKycpaf~=0?vHZ&SM;Hjpr(2H)t^u5eC;-=xXrie=S2;jHv!^h z8lIra7ex9Pi&Iz^g{EiR<2|TXr)N$7B+fk3Ea85}iT(6hoI!IZO*4NF^R@2CSztWa z870f5kDt~h>m5bHb;~jVv)u22=UmYkp9`=_k6z-DhIpLl90GY8ryoas%%1>Iew7FL z{eFGxK5^`gKXz4W)uE;~N9e^uX|*2DGhYkM+Mrnm9^AnXU7+U5t#19+xfsOOPKmd} zN6A6cVQANwMwHd!HhCjj!wtT{@q!v#=q_wjjMZQ;}g&ne}!I1H@Dm_*OZ|Jyh(pD_D6ET}>6sRRA=yL%vxO0JY?{=Z5Er?cV!z1~dDPoY zqdMfQ|4t;VO;EeUhI%)LNIdK2e&dEd48LRI280Tvg6r{B`gS-DW0`zIv?weH;z7nVuk5RMFNEKkJ;)MPXwj>?gn=uq4Abyqj(c zq^Kv~=Idsija*a8paAi%vs%&Y;|!S4QV=1oLN}z|4xSI>>2b?I@ne>3hc?;yF!}AKE;@hNr4hQmeLvtKxJssM5v1tAJ&#zd4mD}i zl)hi@w$gvGhOXv`vl>M;VjovYlg$4R*&=PW{{~B$1ThxP{mMQEw#sE z^Alj^ZTXw^+U4Yk*4!$D9)y;Kx7IssHkE2L0Ck$`+Uj;JaWmg=@R*i9{IofcE6hgM zY;VgSDpG0xo$=YnYp*IS^!eAZ3oZ4y=ZaGX=fdv(9`;O19(7ai4~U+B_-p?-tcY>y z2YV^n?N5Sc)W8RkN3%oNlgn%`{AHZN0i`y#3ahke(x{B6xsd!fbG zZp~Lk1KjM*9x_^ZhM4pWbsN@qVnC#1Zvxglft%we6P`S+M(E9$@V5<6;cdS497kfv zFB9$Qg`~D_=>c)AYGt}R>Bu_$>kej^^ombJx7xilf6@#I+X*VLVfGxlj0!O4C#e^w z%_6{wZ0e(sotSayp(QaT)>G`?-ZuSv&1KW*nbKpy@$s|SuVY3)=%vtVFe@q!KGxI3 z4@DIh$3-mOUUh%hr(Z8SaIYGv=*w)Z3b!|JtG8KWSqD3G>QM19+8CR}bhSqC&TM4W zw?it%I_DD6mn3Uw5D+-XU(OHSPA&RwdZ=ax#Lv5)#Q?JjEG*?;8B! zxQcrLCThfW>{g3+zGBL9rERPCY1DJ&(4s$d77kcw+w1a=aM5V>Qb{TnB^3Wm)JeE1 zfu1PKtmDqZol%`wy_GXGx+Vf0V&0HhY&)?0c4#U)pr@SfW^`&f*oa3V6&zR}WonJP zKaYaB(v2QIWVJ$%ESt8|S@jyq!u;z3!AjUzGj9h8mvXf;e1?=)lY*})Cn2lRO?XqK zN0n3B*LF~{!}q8I&Bt_bn5=0i$`Jnx8JlSL9~O3IN%UySGp}%#L+82B5cc4AY`OX? zRQMLQD-&_3WCzfy#yY%;cRw>AyA=+tfN3UVu6!`jWkyHbku#0lR*Thxb}GyMOAw&Xu#z90+-BS}?`wslXcdMKq`vVHF4CU}ym&&c6}%SfW{a8=I$jV5b(z$7jHr9PYN)=1{nsJ@|BpqGzM=A+ z{zRh_oA>LZUYq=vj?74eOjl-ZRqbzbj!Tt>snPKH$OE0O%sh>bl$bOM!L$)Mg7P<+ z=49h}v3^yOl)oyuGjOj#ADE}az(18W7T#RQ#s1KK=(i(%jM++Zh5T_hE>>nP^E+tT zJ1+KYaMVj&O5>}yQ#@68%xd(&fTfX!i?gNVC??xkU+fVw@iVrU;(UdqtuV`DTHfXeS3?C(dj+^2N_$5HwgG(W26M1c*5xeMF$#GvYRh-l zZ=Znh!K`M)Ct$y~ zX!pY(jv9x{nZXAZAs&0e05s%d{--bQ4%Ja4p+UH_a+gATvn#0UK!F{Nyh$3-akVtO zkYf`sCQ7*+H^#!i|#JY5~3)L9@~}k`$>ud zFBe@1LgX^WpDtnWpUA3U6bxF3r+yr=hc1?W^{5?KeaUt65$Q_`v*VwD-96lO5ZXPr z%~BFP^(j8@CxG(;HY$a!66nn##p`N>^$u*Hqc-V~s)k{&y5YMaI^HEm6N~4-hne@! z@J}z(pH%#N($LW3TTwVx1A_Bdwd=w-B=A|MyeGePLpJ!cXU1XRfp?Kz$zyY7lCE!A z)KwE;0Mx1`Gf{K?Mif$|tjh^OrnuSkNBJh>H|XO+u%t{*2qD$035|9*ZZfo6y)4^t zCi&GCft->mna8QWcmyj;=NC5tN*-pCK>-b)SF=f*QSP$P;_zHaT9ck1+WwN)P0XUG zP?a}L__r}+G+Hx3iy*Pn@bI$m8$kL(*dlw+yeK@~icY(BIX$b-4jQ8q6~5eQhNJVw z$joof-<+R-u3CM{wxyfR`?d7viApo^67D9M^WNO!Q`PbW!w#i;N6*FriC}m&L3N_X_oe1cbf&9Z5y?*LlQ4*AcM@ zW_EyWZ_cE;&8fn7joNqa#UF6t7Ywj7?cpc6MJ#6@j=FBD3VE%IZu__Idky`?qtUgV z5*u>oZXz10EWF=@aPRARWqCve_4N)z@vSPqPnogcorPqkY!+3E7B2QcegfdJD4_J_ zxEVXqa!oH&?jwzpA#bSn=9x-W9{}!fanbgWqEqe^Yx=Mk=JwH8Z0n9o4laNF~&+Hc=#1{*tZCvbjL3Q9)HL7wc76=@&>R(o@M?(-zA zIHcODs==@NjI*GsLPG=#OK5R#hr3$U4 zCWxqAvS5_6fHUcTgOPS$Xw@-Wze{x2#&Yf+x{#kMaNwRwYrvYXSl9>ooeRp&4eKQd z5(nSyLtd(o4az=*+OZ0?4q7LcxassD{Y}6h%R$&P>t(bBP7otRlXRwSeNvR&NDpdgd-y|zV8P6pIKtdj4ZE#hu4 z1-}I4w)?ix2C}7fi$q;FGGFj#J!7?xc^x;;rq2EA zdOshwanYB8JmOmLQ`MNOE|w&=ujF`9PV$G^r**BF!ez_*ve8aah3&_)o53Ko5}Jb_ zn#g0Ncg%iV#@W2e`P{HBRT@hMYrr$h{M$JIFgsjd zgA6+AXfGm)9VoarA>}K{$$VOD?M1Y)k?kQG{UZv+TNBGgqybcDm*!ZPe6W6!7e-(n zG5P>SB*!!Z|K_i6r@@P#1X|nYLC&esEAUvP;7z9K`WW>Y?4EV`ZX1t=CY%8&QJ2=X z)CJkd4k7*wnFN#GO^gF!A910x;-1LE+4m<)uKE91B>$dBU6`F(zUAF-PIu>v{T=#x z#%eOMNQ7A<@gnBkrGlT4t}+QlQSp$7rY4?p>uJ(_)}cgxc#d3Ew_}3MXYt`-C%Z|X;F^ywQRsS2 z_O@1$N;vH8O>0s;8#OTTGW{E=&m=oIHp2nTXb%Tw>eQ~qq)fe$^K=!WdC@L}xnrwH z0^VY4?+^G$wv2E^`zRGEc?}|%c>di0lVpU zl7e|{lJ`jw9YkTX%?f|4q`x!{wbK(eBc6zN;ad91{q9|~Fj6ikWOM>ZM)qW6`C=+~ z>$c^G2fV!Tzk!~J*+tCVi};(HKMEBh6)z8$XK(Il1!JqB=3>iIkaM(As0z1L)mH3Y zW35p^s3PPu#n@gGr`}`gXo0yj`q+`gf^}NY&YLGa#C6!%TZMjx`3bnLpz2+9`KJ*} z?FF_M@VC#=$0$JgLm_HPS|Dw!-=llqn9IWn<+f%*DCyRy`MtNz?X z2C&<3Kg*b7IHlv*DH$ywIlv4SyZr=QDgHejEy=PvLI^EqS;gtXw1G<50ut&qEh;r$ z9rM7T5GnMh{#b9M9KRN^3Oqk>Tjo-v+aJ;xljo%0>L1WCww{yMO#Z%~TytM0%1h8QOGj2SY9>70l_Gt($heA*INZC9r^q)etN)>S$XPAc|T z?PEqb)1h&>@LR9CiBH#yKgL@m>{rSYTH>(VaA#`$B`>CeeC;yS4%~q9fm|BQzU}|oGU%+TuF-AkEs#rnY%fcdFDb;3kW4Oa^_d6{b7#PbJ(>8l6uSZQ* zgw|kWYOgtJX@$3$E~oUd^p(ml*L8!w;Tu{c3|z9Wz|GO7HeG)f-L3)u*D#(JeVTCX z>~6IMg%~T-v_W*4Giw^pkWP{wqu)Hk_ZkdDs@5^rq~yX_feG1=RBrj9QaHw*`Xabg z!xv3S5$Kh}i4sGYMa~wLUFwCLFCF*UB9_!i z3v9s_FUv)J9HJv`u4WZp+(oNd3xk291#hS+$8~5V+7435Ghnt?p*6W0W6XVDs*`xM!YSc%A8+|E0C$zQhB zTKO6;&ObWw?}z@a=sLDkp(F!o0_|R@J9n?;L8OwZY!wg7m;|%i=9Oc&w3~XvvlHe- zEd*RA$s!x;NmTZ{7Z*}P3Mq7EHOjmt$hjPp9Ry1>24iC6&qz@M&DzZ4RXDrh1fG`n zr{Pt$X2Zg4EKf$2E_45&CbZ}pG)C(i93a|@4oAB3599g_F_xN#+$786-{$$wS8xkE zy$@J8$EpmsXGWt7g(Et2il}^@cuM6)^tkk-DZt!wJ1%%e5~gNeMphoVsCL_5yT+1x z%u$P!Yf1PxAcp!IRP`AW1eWf?8I045*SaLEhrCAcs#%7?QCnZ84s^almr5rOO<1+b zl^J?%6^RVsMzt0x*sQH;)Hi5%o3LgnwlMOTeEe36#VZvKVjx9AKCuj|wwp52<;&4GX#zEDR$kr(%RwliE@{MtoG zFQ#2GB4Pa&svE}f)Fb_j+n_mmfLOh_Dde~ct3KuG&PUAdA%lBXY6Hg7n%-zLEo7D> zUb*rK2+Xxg(ZRxu{59^ilwYIUy0Oeb(flgrm#T%975n0PCPv6_?Z#I$a_iK)jp&T0 zT)gUC8hBX{E!E5N6*Pe6;!8Ec+04%8nQ}uB`(33=AhW(Us#R0-fS&J+jZEsY$2*6G zx59ODt*S;h<=O!R3$}oU2NS?)uItOL(4Gl#9d9benMG8!W_OZ+?-w7 zmFri(U=fB+JPc2$Rhc-fYEfnQcf=}d7C^s4`fDP4V0E(Ye;gv<(1PHEusT?&4-5>a z+MuQ8whBvom7bVW1X13=g`JX;9$8th)YJzWZE&QY|GPr!6qFnXWrDAu>tBo0Yb@E_y$D{Fi@BXP;4cY53YH# zJseyGa`X(`m`;$!7veg_|6n)r&lw`S)?R$iwo0Z*+v*mu-(ywUciPAFDdzp_fy}Sp zS77%F^XvZo$n&z?n2Q1x^oye=rk{C*{wlMhWfDBeqEK!rIdDQ534YH)<*bBgDs_FmG4Q}!KpitSETY;vt{#Pvoi z-$eM&5Ts8~%)--@;#09QxHPmfN>#z|DK(rsg~L6RqTST9G>Li{-}#@sLyljel>yEE2E`5J8-PU&PN zth2q_FrCnm&H6(7+piGEoMF7$CFu@1SGs@{dD4AUCA@D9_pgio7L61_`125VR4Ee` z2cs1biHNvaT+|`dOU1Us?5&Uej(bHNYU}JuTw_51=r-+r0s(k^IgeQXb!d&HOlRR~ zK@O=m@w~wvu76PiCv{fIM^O^PglD$M!*Wo}twyXuTPx-AUQn69&1fLKk%%*{!$#CB zW*Q@Q`ggf-lGU$81`NXmbz)y%$-ftlnUzdwK|v9gaC9xHuQ6JuA=8Rkp*o>_^xPXlST zmV0+>`L>C&u2m8F?jlVo^(QVwY80r%#ro3Z%HoFFkT^zTvgjb}ksg=r%f5K68KnQC(+|yGKB04@7{H;SW2< zE`fgvPCAz^yURHTY+`C^PH0iS2U>5V8G1QOw9~N33l@8$6|yOtwWb#+SK>0N*4N8M zBKeh|H#lYFwfHxTRe6FR9L3R$2*&N3pXBu*4PeQIHpgfDrG*btqR9$$o&hkrM-fL_UiTE$Zr7Qm<_xPYDfRh<$*fqducC*b=e zY;MZnMyXi4UgpuBWW#;eq8E79Kq)LA9f?5rI$?;eb8-zVcIsHEaTHO3{LNoFbW9HG zl@xjqD`{3_P|6yI#P715tXGl1cM2JsxF$Dvcq&;n98zx-?)p7+lW-_qMoRQENI$$1mK$I4zis8W@9j09IX)^86!Wr#sOPUb)G4JVo* z(B;RbNAMQm(mQ?sV{iXQF1Q|{%4ZKJOcUuNKu;zoXFuI<)saV!UuuKg4sl?qA}KNY zL&j8*U0)}93Y=)brukT5oue|35%SgOh8FqkPbK3$L`5ui>QUu?A{=hbH%OQZJG4KP z%U!m>0IXW~TfPL1t0YI0#98tpPL0Bu>Qc{8Hjs{{Hu6M-*4em|Yp8aSNuCk3)d6@E`~Eu<%-~d3f+q z`9apH$Y1%c;{>n$L8Dz%;9gnfTVZe8Q_(`n6o$m|OJGF5y~+|QqmBU-77?J(Wpvkc zY>-{=9ZYbMAX-vbd=!A5*TM_YEDfJ<`uMPp$riFM;VkAm}EhB<{z1ENvj-y z;N`+h;jCM8dcV#Bix*0l%0lZi5eS!WbWC!-W0av}MnRW2%UUwlWcu?6J~A-N$X2MN zM1FX^;*=HJUhYs|gNsVwI$hW4rEf3OIWYOyBy31kfX@MZd`WE-5-KZ+=G!UFSJ;bM z)lUW9z0y5(GBf+w5R=^KUhfcrXZp?{KZeTMHv4?zn;w?0{*7AZi>)9-hnhjC6`AY9>52WYA$}gSl39 zrQ`w0Xo|>5lWA~|$G_ae^9wGG+SB%;5lMwlCDK%`FzXbrFs{rmTSU<12dEbx15d4E zb}M{_x`q8|cP)EV=el-UqA;@G4p{M1B=upi!f|gI5Cy8P`RBW=qlhI4HHEDnd9Z|CrgFnxYu$vM{|SH-iZWt>=dNZ{s&E88n}bKFVoq0iQZE@B z{AurQh)m4ohWs$AuWMLRlySzWSZ1>}$WZh*${U^vv=<3#*odJrIFOJ{JWs9_E61=& zi3BpWK5)%Dxw5rhhS1fkaDwvyQYrL!f!0+Gifej zu3L|qqVRyV&fdm|AGoWzQ|cInLOGeOR;H4%R@4YP7tY+{PhBa=I_5)Wti-UACHI{G zp51*b*o~5-@M*7f9#Tegq(XysJ=a;icIS46RxKgR?R;3IsjkQ*O=44G02effy4V%V2p2|L-En2w8_1JS(&DK zyz*W4AzAwzwxxC_daWu+KY3m`X71x;<_9QS_zY-JlzF%`XD7KxC<-~>!?$=~Pk4%t zOKQ}8e8r~)I5|`MjW?5R2x$!i;2DM;_b}FHw{l)14@P5pB4v6k zmh6D#M;WSQ8(B)x@Ze>s2QSO~?G>@v$!t1dxlwXYRK$u`Vksobe3*)=s<7oMyLQVQ zHCaX-+(=3)$AV6dIC4tmTO#)5MZF&G9PW1dh zIw5lLJ@BsI&~ltkQc%5}MN=|Ucy$cgTQI?#!2wn=1tt3CC&y*%7r>$u+P_2Y73(G3 zHndQxg^t$YPnEgp79LO0sGoquj6m{z3`;&0HY1dcxH9Kj2A#6K5;s_$;Hl_dw0!oe zIus!eaJP-!bUH8R8DVF(Bg$2~M8R#jpb-gb;Qix*>-9$yTyAY{8Wbkl*O{$Ug$das zYjLz%>qK!co2PE51rcEUsY;5Ak=f)T>5o>c8;T;Bt~pm#=4ZcrQ!71!`l0&9tS&&a zGKz+3*l+h0njBWYm;BD=JHGE_t5e{0NbF>*5yXfpZ#?v$b8WpC9IU_4;mWTJQAPm~ z32BtY6-~`3TTfm8r!X9s(bl^>E)oq^r8Go06)$>~hS2IZgmO>jmFXMVK7rS~|0&Dg zNX(NHr+_7Nop;FoZ7ArjNw=g{9;$g9x!&y#Fih}5Qlv38!w}br2iYJLRbNpb?$RZERRK|Fpf&aEp75xU_y-rpDI-o?WXhy#>;nY6$d9+QZP8<=!^dH~>LL8a z3XjdL!ZysYnwpNsTKnodZASN_k5ijuWNQD3$xiK3k+kx~Hs*$KZW?_LA^wSupMgu9 zg-a9Ws8FNMz-h=1hpnjf$R20skj6fB+1Vc7y!Sjx@4iTE(Z_r8%W72(zc z;|n)8>YBo!?iiKfjVl~r`(>4jF(3Gn{4KmY&FOl(89gw# z`DH}n60spzC`y$Jyx0iA${2Tw)*&Y~+(&T?4W4W5+J8-*+?j=kg*ti+iGckE1rST6 z$>q&_6(U7a0`R!P{{L0vz`(u~xzyT2p1To`EQ+JCY|3s5%Ty)}{IlW&m)pb8J&WAz zr2-8NL=Ku?Fx9Rae3PySO}Epj9D?en0)xNpXm^MfA>M12)H6F#ne5cS?kgBQ^#2`e z77=dC+#|nrtQ)^SELVMH-tPG8hEL__S7OtZuYCNySYu0re7{)gTdnP@8PRpFii|v5 zs)P9i;N$(SdGKY=hpEuR%adEP70@pqFP`u3?GOYzT6WZY8C6x?_IIK7#({Gb*uHo; zsNqZmO}>B|OGNG;QprNQbQ9g~$R+EQ3H^w<^= zjPZut+afqR)s_j}5Q74Rbw>v=1SDRSeqT8+eF8Rs{8)tMRrD%IQrP7?kdsupq*f+= zIvl*efe`MmGIuZM^oy5H3a9V)cc(7-}=GNqS|~c zr|k2`Q?Zr>DLW`^dmpB?vf!VukGMewuFQ2z1P0G1fal~1uj_z2)PG$r_(>z?Z80p) z*|9EQ>`l{GzjD{^VOHEv&b0o|Ddg>YPP7_h!d+gl z55D6t_uF#ago6neQ~Bb9Q8IY)o$EmxQb-~+8ja=^2aOtug^a+{|f#s9f>}H3#S+FnMGe+fVwxsN(ZWlVSn@W6yT4gBDJw)(;d22T%q z`DS>mpGRSoO60}8S?sWhj~tgX!UOO=K72AdcHp5AT)p_ zR^@Q{xyG#7Z5B(DP99I|3m;3Rq~^$lquRbz_Z zgeBSiC>fcTFiuqUc6Y>*;2ufpHt!Ok_sVn%__!_$?m8(i+ZdSB?%k1-I$DNN-xR`r z$9OruGAB}PsabHxG7b|Cb?_C(31VO}^+R`LSe$j6Y#@Ug7y$>1$05~!Qd(0(!{a$1 z%8^l`{YVA-yNdmdZF1OdGz+g{W9vw24aMC&uCkB#cAx*$%AfID5ut!QH6z5aq7oLq z_Xyd^4f85zT1MKDWP?9XeIn8u)sUgO&rHA20Fwd4Vjr3Zybn%C+e1-WI?Q~E#4pm?ll^;a;lT&MUe+qc;tZ(sTf=O{byX!_pU7v^yE@`GRmH|ZTmkY=c9 z;{1NMDhK2|*+kEBuHr{e=f~Ud3HVAdH`}jTqztQcg(Ul1v(yP%;M~3N1%{+#9XUM} zCiKQu$Hn5|szirS%ub)j2r^Qgu$Zm-Y6&IyilvjMq4_FfN?#A5iol(`lStazRU8~> z1FGeJIFBk$4^JVH;d@IT%X+-4FD<8>+#TdsT#oV}5t=NO^?27$lShvvgLlARBGe<| zBLAZ1_fLX?F?E>kGZ=hfA#y3usGWZP1aP5qSV0L@)cw3il-_bhq-z};FI)MbhuDn6 z#5p`J_0atm`6@=$G#RQ7J@nH|=xBsb2HfStY02YH`E9FpsJ7=)^y}yW&;F+F<^VPc z-1>&R%)YFv2WKj;g_SR&!%Js!b*DnD4(8b5dI-qUj+j}JlS6xz|1tV&ZoYieW=5~& z$N|fGGapBLr#q(zz)a3i&s+~mf*NztqBj_{QF2>b`f>yDtGa&SQA7AOKw?ex=kJ8iiif335?`Mb{+S_>2xqrVen>&}wCdQOTGFU%uIJ%8|I z>y5YRE{%T7Hx!vI@ZJ3)ECcgy8VVc5xEkha-IAx8TRgGpmDxRbep0^cCq^dw>3OJf z=?!zU3u6?`7$B@bWgFSYeKjP^W^1K8vtX?#0jiJNO!CQN1luWly5Sd6A$c3~AD-wQ zzDH8KH}ofLm&TrCDbAVUmVWyq2t$AF1+lB0mqdgqn1t~O*veZ^Ke--XHV-|tVNhRT z&x|4!3KXkhzpf|yhP|WVD?+){o!ekSA@|cv&*sKDBpEM~nL8qLo3zngLr<)RqX}sj zcigsPZWS+!oJ*Gzlk%sdx9VPDdgu!7o=NP)eXxdh)_60$r$*3t^Epo9-fWrgK3H`? zwViG4!NU5DBu1#b=pd3ot7^@uB7xo&xh+N&`4)9;ESRn&R^o%TX@uS2ZHH6!FIJU? zF_p?hrIqxh1JcLi8)Lbq$^FUQy8P5q4)H?M9km?MA%YP)n+x=})oHVb5Uf@U7p3Z-CI?q1p{U9~@WF{5WHe`IGxI9YzRxjLMMT-NzhlqDaEWb0AdG z>eN-H9@=(Nd2H%*h1Z~p(K}wrrbzvrO8c`%sREO< zla3`ct}?2g{g@9Myl$qtl+*b}1RY9>{{XAHRid8h)qKBLW!sKi$dbh1Fgv@M7;mR$ zBezvDB=V$I#Aak^8%%K@=_`osY++qq%inGYthY0+OwvE>gEtBcfEemF&`GM+E}?di z1Zu_07ZPdHry?}q&cls`2hm>77RS*TW+VhrQcl3DnJ2gmK9Fe~(nht~WAh_Zb#)vv z_I_MlTMU|b8B_ddqs8#ZgBlK8M=kw?dJYI8wHf#vjs%0uJ)8KhK>S#aKBQ$!SKyLp zDb0sh>s3xqpzRyRJ?ErdTXl;mDq@-j5xM$09O>4(z%|FY`-RWFe|SCPk;^*yA9r%O zl>MH(tFpN3ANr?I{{Y3yh);Q6(*<$w3$i)+hMzUO>U=@PVj8*X8c6F^dKDWeC^@jy>hb3C)!wcGH-O651%k+GY>cQGqquyQGY|BuYr~L}L@AvByBnG#ZU2 zwaDTnzqq!%wY!O)-Z}20(Rl+6IyChqJegE^qUT53i0>>_m!o*ZIwe$F)^m0wHg%EdqWH~P`xFX zK8N~5lv-!Flee=Iq}y$$nmIm{sVgZT2>cY=gJBUFg*QwNeWD)krHMz<4d~-vixu=> z97(4nnwKCAgPv<3{MmJ2b|1@$W8CzRc-Dvc!ygy$<5iscQIEB^liFKN_2M~K=?XCI z$KM}!LCyQm?!H$#PDj{#&%Er{O*v_=ryX4gs{QBGE80JNn`Q)vYq5u;JS4uX(W8$7 zGs0WID%@og=xt^6V&!B7WRI2zJ99um`0@V$457I9V760U-!eos`=iOK+cRA9;X6X&>#Bdl zkWUoWnx*Pp4ZW*J4%fWtt>=;m_Ow}*T*g9}>u3qr%(rEs*u0B@tG`oafz&0VN7JpQ zpH4%VW2?m(KB#$KpGcZx?~bH-vh@qe=5d~wt2CxYaIIG6Pq(mQ;h}_DNo@-_NWRKq zu9Z^0tr3d?HjEZS?OLlB*53XJ^5P3*tIKmTjQ5vnaUInsGmpD&;}K1!<`RlklT>k~ z#AO|FWMq#c-}n!PEpJDv#@bH?tdO5U4UYUq-XQoe&)_2(0n`}Qy}iDSGyKp^J8O`~ zCauZ-^lH`Xaz5tf*1I)wzC3l#?yb}Z!FMRdM#HstALGTf%K4y?qHfT&%izl$H(tWh zgWh=(PXNy8s~fTq~qD~i*!1vtEo%~7o+Rz}pr zmcq2~@bEax*{n=7s2Lpqv$H7KL6G#}x_z{q$(;g7%aDW`>oPX?8{#%b?G0+R9(3}!#k`@CE~FD(t>i^Q-lE1CmGp`&%Bxh0X>p%u$5lNxFo&w%tD9(( zLR!j^C%!_8C>9|$rb=uQQyn*^Nb>U~xNDj1pp#R|fq8cDG+|kt-d$Qi;?yvf_ni(d ziD_MWP5fT-Rv^5OX7A1|GWoU|?!~pwM%8~CTb6j_0!YQYsicWL<#g*ncvR|S2# zc{+DdwD-=5B}#j$X&mc$({H?6T%9CRnse~Dyp>b;DIOrz1$m2+VcVzW#hvUFG1|{- z9m6TElc6J#Wco%Uj|_HvTXAxXKUQU0jDyAP6zBD6>A?}Tc2{u20p=Nx70i5?ieAI~ z*T9eGX5Is5$BkaM-uf%w_fI0fp^m%%0Ic;-{A~F2;_lpf@U*Buq>Ih`(zvv`UAFfT z%TCp=82uXJ-4#zR=H3;J_l8p;b_20f9XP|oreuf>+u>S^eE&zF3tMO(Km< zbEYY48c(5*Hd&;0b|YfIq)NuS+>98mlaUPS9x|-uW6Fb8rejR=sit_niWK*bO~2nA zHW4CfkTW9RLmR$Ilfy2q%7cr`xgr+V7n5Ac6bufna>`Z|qh@q+GxXwQw6whHQ^?IM z%WVXcwx>FaKP^uz7CY&I@0PD;A1_-O+93QXt)mf%H5rb;rjs60e9wPG=82vxZSs<91Kc>abUiVC8iwi14#6L9yI>|=ik|N$6T)dtJEL-rPQtYe*;^ASwkTM z=Lv@;hr_1=Yl}%^w`MAnjV}=+cQP{Stxd+5=_g3$+uQQX{N3cWsl zeq}wQBa2J2v_y{Enknavku?q3F5Fq$85T}N9YdyTMC|cLqek_le^d{L6IxG0 zBI(pqG(00Utum!CGVUi(@O<(A05NI*0QETPat|`~eyeQ$G2YC{{KJGB>MMzonyYH) zqqUBlg*F`^{21#{UD=DZytfdAn71fu4i$_K>|~Ex<_gq}_=HYMLvIu&LbMIb1$4(B z(#nIdR~<6)DAEgfCT^dh5NTNEO;D5bj<~ZYdBZ9ik9Hb9u&=;FE(Nu~dDKua)O9j? ztfyd+2=w8XPqDd{OR%I7_P}aVH!_?E9Pz6AHb1S5cmB~v--i_Zf0SW(D1&fZaTV9)i|q#5ZN-B@((Pq_RoqMWzPotNvl{^nX>o6H zJd4XZO6nVFTno;-6}s8mS@YnvhG{P?Zf-aug)OF;K%YnK^*IM_Idf+K%>@@`&<57S}^zR-AcHCtqU5+*8yF9^{E!bOio*3-y)#kmsk|2o!E}mbIYLZz= zqNv(NF1mrxkV@ht%a(LC5m69&?gtUB&6!}8PC$kB&YXlepPw5G9nFn%kZXaN*qkHp^*rZ zNZNR#L|CI>U4^VayiHH(94$BE>USbQ$Y6{xXq8e<7i3zHPK`=C7sn965olew=45ZS zZ&QV~GKOVsD%ouZBZ*^@XKg6YNiHqKaxhagn(SriGCkIuj@>@rz{IR)u91vrL-s%td^YOAZ}~kAQGqs33+U?20_iyCSsMQ#>`^YJE^U{ z?II$Uc4w2#WfVy+B$Wk8?8tawZQ_LxOAwi5ut*E)%(CU!NE|ezIex!wJ%3v$kbm!SuTzmE>R52^rYX?(N-! zMtw54d0s-tnpFAbl0s#BSnH6>S=cFtU1DPlNivBPRJ5RlM3nxqiv&R0@?j?I+Cv+9xq zE!+mWltC1MAKeLRg+^hhumXytdfQ>Tlc~dTcLXXP8wlAR?2)Mz_>?CunXx%|<%YGE zA?}h96R$g7m|KQQYeVXH;egq=_Kny-j@$-S)OMiVTNysY z%Nq-JR?qi&hNz|nwIngFGwj1gcdIAl#dI2fdAXIR>i+KcZGIg5vD6WAnQv~MFRjgd zk931C98ly&M!9F%fB~i<=iIcO;@0;OEe3p$BVc>pAw%1@ZWc5(Z6fB^e-@rNzdb%M zG1Y6n0Kca3tv)|oTit1CpJ2_mT2d8kK*Lk}jP%xCi`{c2^yuxYj}`dRM76w&Qk zNWlWEtQA#5({W?9sf$-;rkxJl99p9cbyS+5;jUeu4crJ6CYaV{spdFYHBgO3Rb`V; zeqH!*#fW|x6$+CzE5KVl5h&g>&Vvgghn7I`y<&{J&}Opo(>*n9n23!=D`BD-T|)6x zv1S=kjK?Fhb}nvaZBH}k9n07|uzYc0D{VIFjoxCcC(?O%{C8k}K0g*D=p8~?Bqo>runA5+#(&c@#tK`7*;38q%7m>V>wAL{wwkXNjSmo-h@= zB{U8+)H3*E-2VVk_lLXwZ@BIH)#CBR_x<+hH-VYygEaw3PZ!aD$RFj#sE_6!$Z)Z> zL3L=zJ{f#t3vH~4AsW*?vDJ2Wp+5#D(NEt^yOs5oxy!6+?5Z3)$5!OW&zhTbBchsm zA00yCE+YlP)9MJqwL8Cq5LsI3_lHSkK<*=1IcQs!q~*f4Jr)T6Yv`e3TAYP8*vG$nf%OnD!q z*mM+*vdG4oNjh~F)w-COWnc_z&Q$%R0ZRzQDsq%nyRg=_LznL@%xk7mR&}om4b-mw z>@0=3j;|uhT#|KHP}R3+I5#eI$RIWU02GH={U^gW&y=_6F+Z0UmZ|2^t-C5{GsdYs zqjq|u(TO47Z$6+uqnTtJaU60Y@$)&Bmjw!|YN(M{NminRfF?zG5Ps`3FSSW1M+-B_<_44+d@yhlwBl){=CA`CzDmI!Ohp?&aVT6=rBu=akf!J{k z$g3)_)}YY5XCk2X&{Se3ff&aYo@A~xwwVT%(7#`AW+oRP=$aXUObGc_NNR(m17slo}De;v4sYjUAb1%+*`J&;{>*-l2kN#8)I$@mMGhHt8Z4^MkM#T#{}u1vw3;Q zcvyE4QHj`{0ppD#P3&2e>8I5dIE4tPE(!D;Jv^yI9*^V2TWQ(f{5X_;t?i#s??yt0 z#=kBH!TB&pX!ytSV&)rZc``#it=&Zn7!{jCCaQ&KXKHGv&Bc_O8au047S4G_ffTWy z-fSgctEXH++5?p+2Zj(((X@lHcDBk=nIA#jkD>kKr=yqr80u0CwRH=*Q2lF(59Pv1 z+vXjIf5(Nok0NM~*lFZ7-Pw*?4k5h$PTWH$t@ds8kY(_$9@2B{oirb++ZboHTNhEb z&{WsAhbHulLqF>hn*4HBKb?`nH>olS82wy`^x)f_u;(9qWaht^$K$}7G3+HZ6!j$9 z%iJ4wI*g-#Efn{*k^UA51dPE9rjCrJs>()Tl!}Zb5??dH!Y%^jZ$6#epKBwr+AB)n zNnO>aXYyez)%kS{?%uYP6(I-XOapCj1l&S8>C?is3P8_`76~&*Tr99mtZSl3h*6|> z0fQ7Lmkc~tH%(q#FjQAgTyr}4SAT{UPK@m}m%6N_XCbbhNXsq38dX%}1JmhHVohUC z&KjuzP~iMK!#rc1a05NPEh@UE>kGw2J5H zaGHNewcvFmt9aq&V^ab>3lW`11aI2R^z`Fhc>eqIeLr*8tMswf;Cl0{y020zmzoy5 zn@IfAjSb~|k7ln_;z;*8@b-d#gAD}YjHZG2qjrwti@OIrU@Xxc+T$RCJD6iw8ynyU zb`t(P<%Lx)MKgFAy`0_U4o!xPnrjsF?H?v0sN#)^ACUZG2{MiqJYDE=U_0rDh|sI1 z-yS7#-VS)XhGGl-;;X26NTRZp?rLD1F#K}Q5=N3xB8Ft9Yz|dcJS$E0#g|=%?qeRR z^CP!e(Id_&;Jr<8NfNfojYHFjr;b%AbxWIfS7HECcv`AF@e_uIPisi+0i?(Ft_1=C>aWfx4GWzw3u;1rXqeWX zDBlsptsZ)B)z}Z1vGMrQzlKOI3!rvHib&f8Cs4iLT{8=rH4jO| z-9Bn_E$JjR+G1>^UjAEW;g6$Q9}GU9I`OB9>=<&j)F@eZsa^E!#8TJI0tWiZ06!)b z-^zKE?aUfrMR2reg>CkO#kDExEk-p(EgB-CK%@|K)+4EWq-;3*yRF*W>KrLEpb-{U zKdfCc+Banmp9~qgRl&DsUKr$Wc!8Yvg448zxv+tILmm`j_9sda4JhDB;f?HJ&78^Z!Bc2>CPS5k6-yOsJ4>wL(% zmAgC>WwAc;wU0jXF?CJ7FRpYRwGPe(Thn83x$b3JTVpME~?2a;N{yk+#8-9M^HG9Hf1No@o(J=U=hO$BKw z+BEj-IF9C6C!XQ-Nil&QbySsjqb(Yh*Aku}HeuFNKFM2Y<%;>dj20Invd540>7Z8c|4hZ?PqG79RF&RpSs){dM|N_$t+TsDBw zTqOjS^02OZ;gcaM<=7Z@V3{BgT>jbsA&~ub3SyhmE8mLRUPm$&CX&WunGWix)UO?O zmEs>X;)cRm;|rA5WL-wx;KWOOARKZ9t>(ET;e*}g*6rA_=+sUwtvao-vW4E-`q8c> ziDgNx?jxI*?)=_zYbY3048}TyDeV)eTgM(wG=_re-tAvgaE~S){{XAqS{7|F$8Yb* zks^X~ep#y$N%hrnBo_Tkpjtvata^Q{^Gd)Cdah)Fm8JcvC1Fl91>m)$wT^S5V9CvyaNaJUXmRKK%Yk3&9w~|TrX^&bc17^$u zp1pPC!l6wCb!JHzrs2D{9r!v=`MC%_x|+Q|KQBf-=P&;Np{}3lKJ2ES(#KZq`_B9S z023}f*|NEdIA7;eao@8L8BzK%P_Df7S}_AuX$e1}3Pt35Mg z{u7))BjB+vv{ALqbLRN=egJ4$kcP|FRnIS^pC&a$!X=D1kE6R3BNBnY(#Au5bj?jW zMl@Y3T|hQfsXTvDLtR6;z7d4Gg4*NU-9vM3<2JCMCr|mr+G1tYJjz*n@g!y57LG`R ztZ&Q`K`l7oaCtL_L&A1qw(N?5R<*fvqa&!9NaZsf`e>uK6GJri^75NY+{p_)t2Xd1 z9yUz7Y8Sr__VGj`oO$ifv5`#Ph++lMj;`km+^I5s4MF^I>4pN57XM=y&fG7`2yrYqyugaV30L2*+x%{S&j` zz>Y)g_9}X---%$`6>6L5zN5h5TeU~Yij0WNVR;&b>_og2%bKh9k*#tpqjouR(kr3C zLMSAs&FpUMB%O^@;avVKbMNCxZ6c1msU&DpS(xdFGb*=V7v;Pea$`Da8%F$DcVQM-)2BECID-gSZvd!fk6m|yFkht0b7=C_#MaEKop!WK z`=s&yV8cguW}RXYQ_g^Uwc>%>5UQ~Q=(mn2)0;^KO%>c`G7n~@*Ab_Pz>+pu5bSg- zA|D1)MilAdT-CR!?OovDM{unoM!FG8$eKpl4Gg>S`@FKnO^VuOU+`E{#|M=0&EQOJ z@HSr_0zJIkrQ#%UuC0T}TVTU=POVsaYzoroYN?$f1j!?8BHbywH#rP@&)xRlb$@ui z?EAZs9X{*(x0_9r_pWEO)$_91j=r0|_UcE{FD3`@M|BaQjM72s$qRXryRjc2)*`7i zl^Kat5EOk?IL|7ahhVMz%6jpEvO(Fu9Gi*>MoLav`W+yS9H?u;t+HnGMqY+2;w`W|J zT2wPE(_G5NM`+^)ianfBgGAMyFXp(OIHaE6o`Q<9%(rU(HI($7UD*^YiSkrB+;Rlc)@#!R@Knx69zu*J8hzdsfCxkmG2nfkb%8xPF+ofCK$QN%v5I5YI=rIsVLBRsj(Zq*n(yMf`Kb|Z%7 zIG(Mc%f``3UspBA5`K;Za~HLC6{NtldrIXrbrh)H1~o+@NH*3t4n7qp1e|l{6t<11 ztDm=Z+&yku@9o)x(}<1Hg0;%{aYt|11Y(4a-wblOe#`sC&C#jpukP&|byk{t@z!Oo zUww5j!@J*R{2F_5^kO)>wbQvU!{(plz;V4qpBER!ja!@Y{{S8)Rr1OfRi@*ZWyZ{N z0PV}RxH1Z^rVKkj5r&dIFmocPHStpJ19Hu+8{CE+T_e-WU zTWR0zJ2_KPW00Epa&GKz@9xD9EHv>qya1qS15BVO+fOWq zwv;{Cs4W|*+N7g{=%EK3i6z%-3W+WybgQVX5;T!?o@~3TT!nD6%EA$=-R#gQU}n;D z(lar@yi9v(+l^4nvs9X}YLZ(sUsyMeG;jOwUj3fqOm)%Q);gIV>$72dQ-QxX__5qE z6a2s{^-kPt8xIL1yUKnHM&B}n{1c4wjZHusO?_VA4k=H-bubtNwoT-3;5hT_@-m!W z*vVgc>Fv)ODJ`|p94dV4`^0>IMX@m>DA%xkq}iOeP%t=K7@VrMl|M!$bCK;QPRvuy zQ@3S%JTSJlc}oC|D8t!CGy+r3b&c5pgVb#F!PO&F7cnu&wLG#6_&#KVz~SPV8V*ZQ z)wcH4cQr=wmMJUy-Liq~?pceXkJ(R~sqxf1up_pV$8k^dY3UTLU)dU%<}2KFcVPbj zCVk@>iuis}goYT?oaE9$!=w$a?X)6~97k<$rBy{*Mxf>px}~_Cx0-wdEHg*V_jpgc z+QlHyQa{=h^-S+pJN9985(@gmBVFgW8oBdo{_}G6a~oGL?!9_7ZPQ$JsUqmzR!F4k zy+%l-PMvn~$d7j`BgX3qS4UG&M%+oSqV;7~8~SzN;v4ga2E8Mx{{X06e^rA{k<`eb z{{TR`{;Lt!qxDU6(#!XK(BfRReU&p9XyoZ#N6dfFZhdNO_E~|79+lL4EABTx)$hj- zM(Wcx;TKN3Z-s;;0gAUs>VmoH9X{++$JtjD`=6=*0Qmc_>an2oZmG_R*eLtD?@NM3FZ5Wm23` z>ez5rE|b*Cf=CNxa@mZtD;W$s4l?L{YySYoUjG15h*s~Ubz7)aXwl8n?!~}gqjAaC zQM+EOb0V?oFt+&aEUqDyNbORZTeyO8&7FUEnubb`B6^W}Hoty3R`AUvmjs98M$!bg z8I)}*XwyF4;g4(6uIae@tkoW!6&TkCPrZ?M$L`Y^7sG>$e0cY7yRZG{`^oPdk8`-^ za(?X5&gF9T^0nn!Qn>%x00;pA0|7rFK~j8Vld#=dNz%*j3U`d@miC@!=BxoOf#p*z z4dXsT9mp5!8IQ=MS3v}9X=BrZ!lig~vfL3t;qKt~N|D$@U!hrcu(B!MO%o77r~QbS z?3xx8Z_plf!w2N&MdnrM$P;7gt0dM8D;OL?#a2PF?YyP#0*Zm;RXeo>$!z3fcM)l^ zDO&0a$#DY$_Td1bPpVtQOdYztgYf|&0we?h*+HQNI3P85M|o-azz{3gjxJd)(t`YO znnpZmZOhs|@MP6BEWis-wDd0j0CW-YWujdTqvVKDh)@rSWjGa%aR%hH-PV31dSqDi zc6N@=GfsfeX0a`ch7Mw_c0-g?*}$_}BG9U^^gTL`A-lJ?hpe)uik5na1hG{dul5rH z!`*usZ1q{u&^}*=Q6n4%v}`5T&oK=YYDjqUk7iNi3i)e@EtFA{crS^4>&UUcGy*e9 zVwzvm22y~a)rQ|?^aQx!udF{rV)u6%?y}#J0#QA!JZ8%cg_nR?(11&Sl=Pyv)W}g= z!qN2}rHK%`07Veuw>YPHuUfv)!=Y`f<(RlWRU)R&!-F@p#6J(T3kU-N08+$5XD^?; zt!@SZ5sU6ljm2^(E4DQBxU|QLJYrc9YrHOHPu>%aeg6RUF}5v#VuR3`4!4)S4{3FX zi)$EPSWVc*aywncN6_3Xd8l5!`wNm}5MHoD2rBXM9mGu}0AUZ3KN*Q zZCkPJZ()C??$N-T@PN=rZ}5w^sYImzK@q zTYE3er8*x+wg|C#Rn?~e4V~d?%;e4l z`gCI0+8W zt8#XQd5;(@yAmIQR#R+_O8ydFe7^2Ak9bPi@;P6bm~98ls13jI@dN?17wN~es5&L{ zS3TsKu2=UD#B}|w;;nt>sF(zJ^QWXE%cJlR*MGn@*lcGVxS5w-VCxpNwHhBYqgnTx zdl6%$g^O^}E>Shf5{w0|Rp$onjdzYmcxJ|r1}V|tx$4R#0a!8CAae(#kGB*U$Jk-< z{{We&bV`{CO)%$BTe^kRFsTAEL*)BjfQQf}HE@LiahYZs2hMFib*ecU6cAahCQaW% zIYHRL7U7rb&^e3hhh|+&Rof*&EZSGYF$gHR8KVSrYc;*$riKd2-4yTlmrlA49;Xzw zTP6o~eg6Q+gK^gwt&pm8We6Krt*C1N0WtJ++gZdJYrzf{LPmFlUDzBDMZ=tM@ch6A zc(xHu`=J}UFWp&;LvMkb%^$#F=jNL_(z?Kznh{R%C%k@)pt(!ipUPg`Zl2lvClSG3 z>i#7&&kL;ciz!>9&%iZWf|>vZDMHFP1H`OjF{7N=9EUlI1SG}o7HSo?C6E+vCl;6( zGt4G6V9>#cIN0vuJ%!a+oVd2EWbN2r$VfM6wy9BuwwK#qX5?^yLQ9H<)j zU>=9T%oJ4{YRhS5m{h=<<$8lwQ`wkGjb)X*bMHd#)Q{muAiOOCG!d9q@%*RSR*Rsg zLyiYfOTwi>WVA??vHF55_+XF7Ebw9ZnBW!Rq!42r`lT+h08d5x@$;vp{DR8J;vAakQ%Lof5buGu4W%QT z5QVEy7D<*+t?imicrKBkV%}=vqfyAH2sDPq2O?t?4yaOhoN%ycF+&VmsufyZG9jj( zSC&s$lo3L$uTa@j6uT^*HP1m~c+d$_k%Zqg+MGJdy@xZr^ck^xLkpNiwJx2jw}3Dp zwZ|*V$!f|2CUg75#`qW8tZ{41sv%-ly*vP?%N@earCG|CeHDDn3U4nL>z-h;QkU(Y zOlln{zIer|z|+M>Qm8ESX1?=)q{#FC020v0Pv|)I4uKz>(|t|Odd>80 zD#nJ`O5ziV3QpI-voJ<3{4Amb$oVDEZ7tTb!A81+TJ?1c*v?969I+HW$<$pH&y1SO ze?bY~EtY@4+RE*rP;w25a?W@E0CVkeGc%MNFpO!!TO9C7F|XXLA70+#0zE9 zlFOj4OdPL#w~QIgZh+v73M~zns&e`6lq)n>z{T0&s0eM%J##9WQ1j_pus6Dz+9AqQ zLwFnZLd`RLpOfWH7V$X(_W|pT4UvFzoa4XwDt-^w#3U|#?Kh+QlO5CHIO~W6rLRjq z$$BtFP^_a3M>I#)0^*d%D*$-Qx$^cNntHmerR(YI=3CWltNvb7E8lHO`=ZX`4$B`3 zZe&@`x+-ZcJuRpOD=bX3v{5i+k2vgG8F_%fdx)Ld5_)zQXe_}D43{RH1DQ)|&WeE0 zulph%LM}9n2S#p|f}4$sq(vE{yu(YTJlxjIb*Cb*0t>tNREJQwA#j1|s?Rz3K>EVnnYWJLYmLZW< z@n$zLT7X^Q^727!hoZyAMO&z#p`Av}V#35CWg+eu{aGM*-1ZcFGcoe|C;Uq7@URFo zFpxpqH#*Zfz=O)UfFxYRhkLdsngLnRwOMs|n%kW6H0`w~$aTv}!KOz(8x)7+$Rn>ZGsesAt9nF7y+#U<@1Q6gA(X~|U+qlt~tb#K`z z3CZDL9?bg0t2!NeKcK1NG>}A)OIia1kxE>Fs6Ocs&MrQ~c+=0b59;o%()E$_o@zQ+ z@oOK4M$2 zja_e)rqrNNTGKh`;u@WW+)ES`(5=GOIHXFP^Y%%5$Jm9FV9gQETbcPe-%7wt$Abej zVVYn?ckyEcid{TM5)xsHmM0IF)lP^r=)pH%Afp2Wr@|hy=<|hV{mA!*b6}mHQ%qRzEQ+-{NXOgT=0 zDSe>s{{Uz!);S^vN_Dxhwvy|enn8bRz*IgF7yX@ofps*2lMQUl1QGuVrH3|>uL4!8Nz;2)p7>&IngtdKQuRJ2meT041k54c;T}ZQy!-}|s9kQKeBBsYvp{ZqCO>mmf zl@$ravX!^rd6gbuzj=MEVR#AYV#f88M zpIZxN6>XD>iHRyJHflkov0OcvAp^syNwuReOJvhZASQ_UOo3n4h7^_q87?@NO6Fqm zpv?5o<5>1)XSu$0v58&!zn*>W#UPo*8N|sAte6l*Z%vF@FM@l8Bfy zODP;(76?SFX>$rlR!%Axp+1q2E}%Nh7xC3X zr0Q~Nj8mZI3`dnSJk8KU*WAsVWc#Z=Vnsc>FpKh~QHR|i5ZTfm4;?GbCZZ+ z*04N;zT~Mu!Af0bF?$>htgzMvLtxLBSSi%zul#7Gso{)AM0saTnijblSJ8`zPTo=o zn>Fjlq*@kWc%pIz9wW0eS=J}niV3>Cp^#qecFiq}o;F`ucL4A(ql5A$Er#*q53VVh z9+%Cp%rSP;84gQ&O4b?1)n1vn-rF^s6mnL!3EEACWW6(A*sRt#L855x&ROU2h;0mZ z3wBze7Vr{;ycvTDcyXYb+;5Y`lB4& zeZ4O1P5>zTU)^r`*Y&AuMvNT zL-aTJOu8EUC8*kuQQr<)DEKyGD z3s7Ml)k|PJ3^2X7)+u;wcY~1VzNN%%;HNk&ZwYQd>hyErc<`KiqhExa`;H)6b^DU+ zYHInsh?k29GA1DQX&|9kwSi9slx7bDE^O`%0K<=9HS2@r~rUo{+t7Ig&HdBAbqYqpjQW4P&~%B@&z);T^Oz{j1D?>IDN18 zjm1IGw;IgXnS5}jV!FPN^r%J#N)Mhl1BvP;FLpKdU$o_bK*VA?@?(k3BOvEFWOsO_ zj{gATB++HS`)+K7(mjE-5j5S(#`3+^zs>~ENPIneRgi7oLYy(XoaCR%+#q)tSZP0Fn{J6}fOb@-^7Z2HPQ1R8 zC8mCR1DtEfO4UXYSQn0oL1l|PsNqdk{{RRrRX%%ZzJExHf|WN#Q{Z3@*?2h{K4z|9 zS`J(}@bG08!hy42WKiLl5SSOIj0C>yG+#n^yx!S^%r>QMIc3gA{2;Jhy}F~rZ)oim zoZ=gD<@*&}*UF2_K4I=^ydKL!-@!6C093iN(pegV3Ipo6ksK7cy%6I9?_5>~3mch8 zv{25=O`TiIGwlP<%#DCwD=tI=eAz=vu&1aVUSVZ1VS#mXLF^hin2F|@1-+E`WjMVW z(6*Yd|Ut&iYt%LABcegx4hQ94WaBTV%7U?DWF1* zfBTGsVv)(^ifT`T1mW6bGUF@%#|T3Y;OCIML$F2!9RbBRr920VA1qTSbs zX2l}Hfk1RS+&JSKa5kd~9>>IZ4X^~V<*-Q>Mwwb2)kV%*q;nCZwxL*TDtn_fiC(m9 z0~sRGiL*5F!A5u>D`x|?g8e)sFLhsyi?|3bILP@aErgEc2WG#6B0flFSsvxzSEr$3 zhUGd3DqRS1369;wLa?ia7Y_rxB`R5kBR)(9uIykv%P=#Sm>r3{a4INmgz_zCCND7E zJT6%0)>uv6R8^ySF^HmSNp@yb;DdpuBmE!72Lj0bsfQKPXtMkb{$_GoGT!u?_Qc>o zqol{&gu=s~@jls9ck?5+SHw7oJ9s^jk0Tlpwsic|%c>z~Oe?uNxj4DD9q-6q`HON( zRQb@?Fp@;oS#IH3qu9Mb7mrW*L1i&(MDe-k=4H?M0chgo1sGgQAQ2;}rA8h>2#QNd z>jnUe z^dbf47DHwBf8floX5tJA!cbVJP8vxLI7O)je1vXri@^#gBPm<|!Er;zHG1KlUK64-^- zg4@p%&&wWZCzI(F2rvN3)W$RFyLZ8`xm_!H(BFa~q{x?k8G_5->cbkE9X#$m^&6E? z^yTq4!8^SJk95I|DScM|0AA*qAmOTTWwXSp+`sIw7Zh~>s$q&MuO}G3*SR;a2o$kJ z0k2m*!(#T5&~{`)=>eLYo)9>6ms}P3 zat@<}IvqM}WKQ#srDUVCSr(yuq}mxI>SfN>$~nPZ#l6FA4bIQryshpL`99*q+74=$ zxH0nwBmR|f#kv)FcD31XF>Q)je~{xm>Gog40+*1S8>IZCt^ijY`@5A6h)Mv<%^roq zRA*t`SkW!b9KQ^jd_qSj1x>m%E*=ETIie1Q8Q@vb3eoYL#S9?J!lnSt@?V*5XvWqUJjvR5Ta>r!6GBZq*0d;Ud<jKWi5lX&$H z2`m*Uwz~6|aZ0zMTP&$tbmEmDNtUgGNYGb<1V^bI65HKp!j6ejpsknUA`5lmeFSMw zey?!yK&ZBYkU-fu(T9w=DIu&|U7PoXrh#Lcslk#mI@cf$S$q#Bn-bXt%)?(el8ro2 zMAnlDTmUmd8w_b@NSAD^^!BKZv-B}6_??EAnaQhrBAk@@KtILJ@$kyaI$p> zsHiQejza2E*O`+sV!2>mKlHBLK@RRO0>}P3m1q7E#`XUI$=;(LfA}Pqq62sam?Csa z)0yB~1Mw+-DLV_F{0&ca2t>%L=4mYWOxG8&KIo|}RJ}Rd2*&yKoXrqQ_@d&31!U@v zii?f}YZ2Z^NdExNh8wF3z9M_v1Pvsujtt5=ZT>(uhbOc`%xkHkA0W zWwjE)txqtEyG>!pdPAOF&XTxjw*{P-9}vL@32^YM@CX+zhuSPYaq~GwV+;^q3?Ypd z5gRO5GFSd(0b+1<2Nf}u8c#q%6aN5-_vBsEI#)Tx|r@-UEg%jKy@#76=* zL)5pJg09aJunx~akiv(gdQd3#_9h43Zf@|T6o zwL6i5<0vr{-VwdXWFoDoG+LiZ8>rcb=%BNs7TuvQpaW@KewZIexxrJ`Qtqn%05SGJ z{>NDwV*VP2?m zLtcquYIJdAX}!nhcO=B-hr^on(+qz)zu5~#UlGH8pRyb( z<_QVaue9M4_l})kUwGbI?Zg!?@L#`C3ddbUBeT-sqpL?AeI~_U+~y0PPn^%oC;?Yc zscYF%{N^-tlTFSpWk>W*kNl~-rWasK9$vHY_lgFq=yw$%&+=vwOFq1MOC7^C=2sf% zB~abU6HxyEBmy>u2rOi_arf>6LGY^no+8PPLb~c)S5MC$d04_nlx=deFtu&e5J*m4 zzH`TqTbDBruk-L8A#p{Lp`|r0U;Yo*IzRKM6AH1^!8PaYaJ#MvuuJIljYmDaFdJ{f zFEYkK&f&?wiOKNO)M)71DFfXIWJrI}2DBC8;jA*-)2Xd~ltGAe$8fp|_^+Sx82K>| zFG_Kr=l*cG{{Y4H&WO=OvF%DXxaXw88`d7uvFQFj;e9 zt|O$yeR+yz6fypBe~#kURc&L(*V=3w`qA93!`6Ya!o4|lS5aUS^H**TZLX#Yp+Gnp z`uoS>`Brf=I~okXf8@@4*f;hi+0!(Hk#W?9j-`m?l*8+^t$MHG6407iU&|>)tCY0t zhKQ_tWfD4xo6|1fU{9hI{{B5;i=70p4CC_)-MrUEKSjfJzp>?pv=!2&S}Z)Ud8|v! z%c)q51BMMdY@N#G*uK$(G=%o|?pUX%;woSK7Z@k_GVyyLUx<3~IQ9FJjPnV|mZxa< zsdI0CUw^ST8>A~85x1{D6M5pxex;jJmRL4f6Q?m>vi|_gd8%vw04-b7Y$b6sIG(=uEFS*=M8G;{q{F#sMsbw!$HG&h5B4R7#Aco{hsh1@t3*U#eE$IF zO^Nfjq-h1-Pe1kcWz!8&z#VWu5WJ?|;~9ckL`eSjT2&48=vl zTf$!ak%T_<{$cIRi%$i~hKT)3f5@52@%E2RBwVCfs5_RH9vS!{=%HpqRZGram@Cudighd&x^J@fFDX%z8fYQ`shQQ8vpzGaRtj_FmO4Z~p);T;Ct4 zm`iG6yb~v2!%NvI7pEWkZBmU4(c6tl6;W%Y-MZ|N|BE;YqvVA^p3$)*(d6E-@7Ck-*#$NmR- zwgjtf9C}yMyvhPNc*ViasJ&k1{{UxE!nMnnxsKW9TnpeZZZK2ye9LGaCN+iuVqKqP z6ug%o-e~<4O+&=hx`~sCr8YwHClnZT5nmKbIznR?nkn%YMy&iFUh%din((yw>I^Ca ze87LngSnidWu6xvI4U_SiJ@LGzJuZ=hofWnpG4?_c82G`j^JuHEWkGv8Qcs9Sj8S7 zg`A$4$F5wMrtG~i77S@#LS>BjPS|ip_C;KTO7Gx49;9RcY6z`v9GEa&<^vYvh?_5^;2?qDEj{;{jP5A4WS#Qw&M z!xlOBbq;_TDIV-`3yFCk;{Bq3&VOL5M~ME!D09L<-7I6-Fak{^y=SFG+3cVH+5iXv z0|Nm+ADAE!iU5J&TlX5L$7X47~49}3!ka$ zEf1+gjTgSor#~7dQtbI(!T^vooTGMQ?JhPshvH+^{{SW-O5#0D-i;p+fH*ZZ3riD! zSInkpk>SJ95KwU(iQnM4=44YOxKYg3(Az`A4I%JLw(y^q-d9ZXSe4do&Byb|qq|v~ zAEp=S4PRBvAWRur@hf(Txfyb?r8OTj9CH8%x&{9Lf2aEbkNEKj3_}mB8nq|dQ7Ne6 zTblx*cAL1-vWL`0QhSq%Ef2+y#G!eBhRz7=#$Pi(W1+A18)Z7pPLBxF$w!OjnDoO7 zd;Vr;$esaAq2Ejvo)aD8h-jJ-{{R4-c(d(4f;r~wV;#H9$Z`+7u>PWT>t!3Qoa3&_jk78JHugs=mfzTl$)u1pZ`i@`o{9%ppK{Vt?rp zt^+4CAJO@l;fDVJq_q_NF>;=3LiGGZVo|3GXT3$F7CK{m%8P)4>%=C+Xv0^SS0=A` zG8-k`!}QfGUaCK^$Y69%ZdqRmv9IW!3rS)B03gHI1I^nJ^(QV5jDGr^K;Y_C@NDMe zQmWFq1x>7f0F2{nSkvNP>;J8cPsw0mJa|4!#KowZ#YA|3FqE6qaqjjD2n#v z!3^mr11QRV9=>G{mAmml_nwWUSNkf<=^nD_aSmrPToTnl#{I6Zz-}x^=PLO9AUFrK zeV8hoPS-E&zxK&4O&p%59*;5P0J-K2zWS5{IAf)_E7K6}HHNsj4K&m=@hNjH%UbRX zuxw%dZE(=D+cXI^v=Y%DbLSsVNNGV1JpQh0mt3sK9CKNgF5Bn)LjIBG>frLQE_w^% z`1XRrUyNnw;f%w0rSZhkvNGj)9dbi{Y7yI)q^hJf)9*N5c&`J0nYZq*;&9Qfd&Bh# z4q%TAv%cHr5laqb8{2ACn?&=a7g+bIiU9WXC8rb5aoSLI-}w~VCpSO0bKMZDmR8#z zr^GLd_?)f4)3`g#d+Q3qZD$A5Ux~tcziuWKp0j}44?HE-?sx0`j4NyP+2$KbHTjFg zuTiJsGvX`aKd7275vV7SL~GV+hPWCzoWdX#{xqpv%5Oc%z z)T*1UUtVS{KoWF5pN2mjc1(r4BBnO4r_6JCKN&xX!G6ZSGLhZBb1VKjin(7&N89U)Su(@(u;_1zD#S?Kw zUIW*eh*S@9@H65ovpC%wX~@eBxcF2de$bh5H=KF|2>oRrS~-snx}P zU+h_%vcHqej5tLWv9%dlwTaZAB~_y5x9(5~d)KIH02O#6v4+M}=0p%IuyOEiR`3XB zE{D85JlCo!Xks3+p)T_a z@-+R!y6bx&ob-P%AySlevgX^`-w}1~VL1r?1j-#t_=$v-S4;gTF<32eH8fYmB&8)w zP;N3Ia>XFqLcz-M9zX5O!y)StK{Mv2f~|ih#t4vUy`N~i(PNv*Jry5ZCl{~n8}*JW z>|eZZsZz7K_lh`daGG;F$3CUg>r%%6EDan7v<9|`GG%$}{UhTb-^zAz_5T21&LNEB zp^xN|Ky?JSnP#><%BB&LDrhk<+LiwRBdmCEr%D z`BMJ*G|k5?e~2F;GDsIXvW4H*a+xU+U>_$@8nZTp2|-w2Ze>*4FtOUNUCSo7h{Bf# z*o6}t?&I;o%UBq>{5;>UHUGxKYsiMX~IB}O5tb2Dt5oCZ1$MkA+# z_=LuT_h%f_@BU{3!SSQ*{h23d{{YXc^KX73c;vrX$GmlSI9uWJ;q2$$2Z+)a>nT(zmYI5lFy_600eBehtPiI%kKVI5WXe>-22SyJy?Eo2*$gi3~CNL zsJV-AD^o$AY2QGM`p@#ql~<2H;#Q7+nS)eH{{T}8)rX$+^h`JkeUmf5g?e%KBM*o* zuRfWH+*K>fs+FdY9VPk_mP!|UgbIOix@dh~(K1z=V%I*Ak_&TKk58f`A1iXZ5B4$C zS=Om7O(%Il{GT1d8-@>8_xYdSaJ-MS99b(q{{Rr=!7J3ADfRq_W=6h|=dz`BU+fV) z->W|t5C+ztc$IGfA04p%rXqxJ%6bm_h%8q!^KDF|6`a8AmB(&ghnPj>70n3wh%ai7 zw4m2BG{fFzI$>@_)WT@Tms8V+nZL|hoxYd^xvT4^?DvI;FR4gs)6tx3)K}kV>Gos6 zniuLQWp?Z9lk3D*vro_a5PBy3e~hi*l?Ha!b!{tlcielY_a$@G^7rk`rfm?VT&18e zdDHr1{Ra%unS(7#O~-yoO=T(pf62^qd)3Dri|<%`<{e$1Uum7R2l6dQEcrPepm+>= zJI~yRDKl`qMgIUNT2YxI`KBM4m;SDLgr@m=N*hYByCF*=It=MaVR$Mpj#reZxJ zn`QyjORy^TX8I`rR0eKOUB8$65Y)u!u3q?+xZ)hXzlqf3_$qGF*#3J$ z!+eOWEc`DI-*IK%WL9g`mbkjFdmpcvurA|Y3_LUasHj!%d+;|303w_Z?9-rnnGdmy zO)U}*+-jH9xbahBhEljq>Osr!j$iU&2(?_!dN6-83lm}j_;i19dyigunrI>ATA2MO z(Dg^-YVuh_`n~6Weg6RDoM#K#`)(B^1mPW>#V?bi*HWWhWx?Vly)lojqSk`c@;)HO zGWgCjU3x>MK=4za5fZ)JKTN9_x$*vy&=YCW_uB-sHaEdKoG=6y%>>_9t)8AHNQfCgd4BYvj=D=vETMokB6rt`5issp5kzQE0AzK zG|GU}tBHg9V%;ry&;3}y!7IDGUQK*Ine07Er_lPAejp0!o0M3b*HhHPNpM-a5@_m` z5fQF2Kjl#mt`zGmK8hbRA_G$`jLOcn`n*btmt0Nna+G#^3J;IW{iodfJ+2G0n0up$ zI6>3<*zt&0Vz+o^ySOivQ?rklV>KY~baCp+Kz$gjJ)b`lTf$YN7K+i}{KPHfnUK3r zApZc!{Fe_iFdg`h3QC3iPrOMZwq47A67-3o{{WaHhJGfI`C?+pHv>>7rOj^cZq@JP zec%rgY~%X>06%DjbtxR#N@BTVwF}pt!@s#|ak%7p>qY$k5mvwt@>Y)K1P5hgPQg<~m z@!m}kjJ^?=TfDOxaQiR6nd?a~k;n0AGpoyXQZ|xVj6`Ec?n5PzyzUAK32v zB=f3)8jn->lpcsb*#BkCZp+K9vc(OxVHY z%M^t(bKNr5Z!>A7ms;NrV6+cCe8#Q6c^gt5^37EGN*zJF*h*H7xyE_5)Ar_b8LQTW z`^6kBPpLD%=;A(*SIe1Jc@Z3-e>i?({+HhM`6d^wE^sH=DctIfo~k-U7&eVp?iYSo z-)ujKa2x7i^+9i~$`M~TTI+;m$gAs#XYF$4I6|FEa`bTq(%SI?Yl`t&ismeCXZ}xI zr9H$^^_n2RtM9+O_u~CdN|&I=&Y>;p8I9sS(-nJO$ElN` zI|gq_2~$YF7${xPzO_@c(zFPSJbwe9tF6{D#Osh3-js&3uUQHkl$na7{jL^ z{fc+_xMPW63x8+B$QppHmwD;gqg$@LeiR$+JtJdtC1_@+C=iC14o+onGa-jP6hQ!t zN^>G`51PSiBbU4jZtoX$bdIPg?9SjV>Q(eYWc(sr>+sq>4^;SE8@DS1FyIQ-f-g(U zC?dpTaJ|1(EIFmp5-quD%!B zm+~W~;lk7+SuL>eu-ZzgOT9XY4@D{2lEq!!50qnaaclrGptKP`1P2fzum~=Q$~wmA z=$Hd+s|?%01AG7_99JxL)r`*20Jt6)P&=ya$&w1?kD#Nw=hr#J7_e$mct8bmH<(Kh z?aLZ$N=8`}h!8CU&zg0(H^}6M(!pxlbLkV{O%$sja#*!haQiDYD^H8#q^TIz>I}75 z5xR2{7T`BWRnP>^Q6j)>)s95B4G0J@a&R~8DP=?f#X!}o++;MC>{eNA-TN^?7D}p> zxZ$KP+>{L3YGJaLVFo$hP0K!2@^~oJHIy$Rb)u zH@*+JFVU8U2x92laXPz}G@|N=0@=^}Kwc8sfY>S5hM-=6$hLyE0~d0ps>dmjIP-Cp zhK6(-YbR_T<D}~r#T}w!~fMj6g<(H}W!AI%F_wz5{yika&vc!7$jf1`^)*UJ> zl|2>0)(hQg2*tX&Ou~+hb7tU0~Y2oj^g=X z9VXf-cf?U|HqbjalGVEBUT?N?)fvs{q1M{Y)2!)PfLiBMTE)~r7i zN>WUNE>^F1&SAN+aYek!gVW_^hHR;1?117XV6oDfHyavNYVEp+n}Ez9xIYZLS!}CN z8kT^Y!E+GKRDb9dP;wa41)t!6t&-ZE9B!t&E7;zmPa{~|5rHba9n9j(MG9a`pxj_2 zsR=%nP@=V|q*qZrx;4o>2>TB+AY_v>Wi4zfV32!tbwX3}$l#_F8j3&L7y=3<82TJKq@6zG&#HZfYzK$NwLlV)?$QMrbu6|_cJ^XZF#6B#*b-)lh}OI-%rGu3ko@e8oK#6!nXLp~ z0pYn`Nz~Y1EV#*U%twe3(@9}ipGB39%V`{e-jB=$MT*K$^KPEGyKaLp#H;#D z)$ecGSXxnlZPgJgQsc+3LA~K@@p6)ax2sn02EHtS@Ph3k&~jC4)?P};bzl|mA86!L zKQso$4+YnmQE07|lV#OlEy+^&wT(EN1?}%^8w46M8kw*M)u>4f95o^Ih-5Djqg+D- zVi!dfQOIynOJx`!-eV!;wQ#nXMI>bIkSIVbEi3F89v4@2eyEL{x>{h|dz1}@Q$-Xd!9gy=leDerTD&Lr z1||;L01gcpS2H#sT>_g!oV{UXmab}zX1*c_&S)6G~oP&1Z`!HNo+7hV;YHa*6sq+%2RTn)w9NjD?) z97-3PvayKh31LZf8|tBEqN;#vK+(g76og^f^{c4liQ6|KF58qz_=1le%X&b?M-^jgy0Tyx_B6RX99?&cif?hh34Wg=<< zm3`0{vO*e~Lb_?9xWJ95bCam%qBmly+bhjqiHYNzo{$LU>R(*(aZ!mH*J3HuG9G2g ziWKhZ%#j5tuq9-sc6x}Yr>_bD>=>zY7uI)oR|gs{?%`RdQ{?0o37}bIp5uLf31WjN z6|@6Dfm4*I(&^{K#3-n%ZNnyW1(7U(h(d_26<`OUj5l?Wo~Cm3qKQ-45Ep>h+gle; ztO-CkJP*5QTNdsify*MS3&IKAI9G@25$fp&3>jqYeP7c%Y#25v=R zc~s2MNK5y{od}hO7zMFll?8;lyWTWLgk_@@8X9FhLf7M+Q> zm?BdkZZf7h!%k{p6w+^C1a<%v=9__fz@?Xg%$&w369rHPkw{e(5Ot8110TBsqz7>Z zkPSjn0m#eZIb^FDTp|TuUCjjw3w%K;OdvOGv1t^l#aXN%RZb)7lM1U^M`^0v*_-^> z0jTEC`Q=0D@lYz9w!3*FD@*{VlO5Q1Og2COM%K{@GK2zf;f2I{Fr;xEQ|sYI_m2h3 zS-UHw3T1UraU8~Jv_uh}lHKE39h}nq3#Mb-aKrWt3nMC$wrzq@m0k;B)LE3675ze$ zUX&vJW~BcBu-`9~mEGV>q7RIl4s3Bu&E*G;xE6^60002sDU|aqU}!vq-cAcD0@Nhf zk=-V{hYv)L~<{2QkJ~O|lLy zj8S*TP?3ruTeV$>EO25UAZEc{!KT`b3OHCaJU(;+dOSd|sNUysSQs5EFcnyY9P%qA z2yR)k09lG3iR@X=xa z02%1Hw7Q4I1O>b;-r06^&I&`?OhGIt*V%7G@pAf^h%#t)65!77D^d_1oc zshUf180Q{>M8I_{Op7)x-`u>sk-a1m!#Ywbq*k%@k4qqfxr`*J^sH4#%2z6}7zAb6 z8cOOZD@(dXmzBE_mm<`)LyR2656q&^F%~QgxQCB#Fs2s8_#D|R&mgA2q|L1~%uqQd zM7IlEI$^~}o;Ot}^t=B6Z>1_yXdBHH7h^Bx8j@8ZVqsRY26Iq}88uXIEErugi3E&HB$sRwhCkJID`ppyE8hWH5z>KsC1+l>la3mbA_WcxEXdDi?Mlf~!~| zkd`E)rY|RW!WG!X+?B6(b=kC5z3oA9nF(BR33=wUoochNW0A-l(I+k|8_^ zr7p&z>5EIYrO3wCG>qv)89=S(yGx~J;YIXj^JRDhP^jaH5JxZFgx4^?2(0<@02L6U zcc4`wKPWw1z%~#4DO!Mea`O!Rx7bzk#4VVoxjA$~gGS4`aK#WJMmQS*I}MUJ3abmP zM3)V=XQ;}30)Z)l*m6;ONUrA$Uf{z3Fukz`&0&{9z!0+P=KdoQ0Bho?@tDlvrB=Hk zdI!bEqL^}>#ho{i=6>N_{Lf#svrA$+KI8{94RE!2s=nq*G>~pccsbm*E)C6|4tZm1 zhCyh^XgSAvmu+9MD)U(rbRKto7JHlqoeOl_1w~37aD&}WwaVTl-5StAn_SdVs;ceV z9&V7vODRl@G26X@D1?>WQ(yu^E$BQ2Byi-eBE~`(D}daM)M|~}`W*of+ERsx?v72S zEuiojGjuY2XZTCTf?NQ+dqq+-jh^HR_YV^wZTQSTFrCUNt0D6Oi?xVnR> zh*^vYateT|Sh4d(&kk(4;BXPaSqEi1OS^_)fIVss=x7Xsi-na{QrHH;F>Dwk4$kZ# zSf&Jc3SJcmo2%W^V1j|Oc+bS8_pGv=#V{NIlo6si1vGdU(9M8@r23$|F;b~nM#_&p ztDI#6ocdy@XP_E5Zi+yHX-Z{$KBx%EfHbL(n0{3VUwZtjYl9RBfoK{s5rdHdGHVhU zLm^{@>AK|sXuoH`%K@S&gnJu=E)=3WIIYQen~4s=MkCL+1%Gr+K*NoCvNkYK(+fe! zm&@@HZak{jIwh^(^7qsV3RIY&ZB{TibeRaoE6Pf@?8z^G@VeBN#P>&*o zndV{(GdVA%5g?&g7v)XXA9J;DGY{d?7(D19ei#mL7SR1^j&X&T!S%NV7cOyj33-bm z&NRH#K!5@z$?!FgiRwT#b~Ts{HqjF7zQoLcFo@Aum!{fRtH&DDsl=A%W2mqewL_6T zN+`{mQPCCycz~&nc#Ur1hfa3k7e-zSR#g;Ugz>N|;IX)4IRhLj!$%4-&v|G?M@HvS zg3$Idj1sc3V3rj7XLMDP#i19AtCj@BQF*W{aY^YG`9jKya3YL6ZdX^Ql@VWBQh}li z>|w6UaLt^WF}XLKk5Rj)!6RFsMb{$uW>ZQ)dcqO9m{7O^-DFPt+eZ9us^Dbo17Q4F zXMG6DTz~*Xw;0KZu0!p|z#TSJNDPzL)G-^aYZrJs3pW6>O*wAaO?L)|@QpRHT$wrx zDrUEjhZu&(UA{ORiEN-VQU3r$>VXAk00QD;+Gt96SPYmbA|Q=BR0~!}yL%)y7J;pb zh`s_`+i*fofV^Rsm4);}aDD5DtJ$ z!GPbSN*P^ssRMGyg$$;cH=8aO#GsfC2d1%tkIKN52q;h}b_Le;EwH~WUW?yLj+vx% zXU)EQK)WM!!b>>=THxiGX(S;ORpint5|$j`DEbRpp#{>~g*YI&T%AMIYNTuxXsu?g zCBw!Qr`9ULhQkqWydjPhFm4iXLi3~<$ifC`P*InF00zJck>g)^gEESMv{mR9tt^1Q zNcf_G#bSjUt7ka@aiN7WIxcnAmRfqzQGu!3jIa~s%V7mkT54($W*c98p%w2}HZ;qK1vqdT#VvX4pM#Uh3A(~ohxUqyBx>h)hR++NF z5e9Ici$~1FK`_d6ZF;eu5NP5ugK!Bhz9~0=S99 z=F&p32~bdweFTaI)2ei!z_6C>rEpXDH5OY5w0@K~JqT1gR@G(WrIUi&(Y#8$vtLva zGUnF?A{4hbV%lwzwXrd4lU8E9wtQQg#haLAJrnfm;q?M=Bwlprp)@k7;w;e}O>1Np3q6UF8h{!=qIVW&WmUJY42*H;3NZ*092M5GyUQ;y z4xUiN%3*5o@eMS|01U%YYw~4{XhzsE2G;28-LjmAExZJlU=ULY-A%h06kAwHWnq?% z!X&OoK?eZI!Klta5|t3-dA`tB@Vl0?ROmKSNmx}Cs6YUK)T=;1UQxRiGeoAK8)B1< z*f5xYe4+xKFLK!sn#@~4u`HoIrBY_6QASc0P9fa|ypb&7&dQ;1K zT&faN6#`4rM$0U0u;JGhU3I+8p}~W7NSA~w`dj6&ud6~tGa9nhHHAFGH?iDZ;8SJd zn8mg>>d|^qa$aUM~-<4Jz`V$GjXdb3Tlq(pH2nqtsPe(3-GU zjM)}l&z6aq5VcCJO~PbY`M_PYtrnS#R)!luPd|;dh-KDd%@8e3Aw3KeF|df%OaUL4 ziGJ>aRcu)jhcFGm1sMi_E1x-DC5pkVSyjd^1L21*7E{k)BkAiQQD>4z0^qP-&d(8| zL=p|phzBYjs9#4Q3T=yO6-`|5NVotOw1s0l%0%umf-S?60kn;MLLa1<)pup41{eU{ z(m`s{^H3@XoY`A|WCf%ojncHh!i`day~Mrh6lK&h2AmiXPzqD1jo6JxG%7OC7#%i; zagDm^aM&e?HR~j0r1Mwe^PURQ6$cgzH_mY)SSc3^aSDR~z!6(3qU-e4e%QV}dq6sq zAEYGKZNh`8aI2x0BUIUJiNs&Z>=0VS;|@^n09rcg7U5{Iq-icU`x6iH+m4ly97Zrj z#K@xCmWfqHGM1Wv5u5Wo-jsL<@q=OnE|?|luuW2SFA!gU5QQl=IJXHo=p)1|rnVJ< zc6bD*vQl%2f!`4XX6TkP1{K44vnLr0n~M9&uoi-b!s)4#r2S+lwTi_Qs%L3c)L9v~ zqG(`PwWwoBNdkx}6$~^4a*;9MYbZc{7owCOB;f!+CGZICCus`#VOt7gChbCzTRSvn zij;uW35g}e*om9Or6CbvO|1cdSTtEHU^3hmgSzg9c!5F})vR)}O`e2hodHA=(ui}c z(k{~>0Ekgz1rh}M7GKloIFHhw3R|AAT%fK9{h^Af$&U$Aydr^Xk`0fObppt9Kv^|b zT5CA56dPMt#kz0TR}W>mwF6vB%`+85HueW4A2PVksLiY_p#VJMcC^82yi|8?e zsAPeuF_BoT8wyG&L3qRiguu^FwL;C2MIQ?6x?E8_Ds zZcvf2rG16GL`w#!Gg zEY8ZiR-|CSB(mH|DRd_+z=F^@YB?^ji(?6Dure4(faf+rd1|cHA3KKbI26qUl4nA| z%YYTCHE)u1%(r&btY+;X)I=I0T4MhIA<%>rV`88RFiyl2P~+$Z!qqZ>D(Y$w0HaBG zmEVW zqP&GH@YkX^%7viDwgYgNy0~_V0-*s!!-aE`%M<|$DQG;fZV@spK6jd>XL^(cq%cYg zMIXE&xGdhyxv6%P#nOl>W{Z3V+Ofcvp74e#K!J$OfU2F#2|?)2W=W$9gpk_Qkmw~( zq_JSRHef+TNo#0)rlnyTT(Bkm_$oJb3bYidgR+_>Y&E-69ET854JS(V8ETwbL?MYN zdeKh>sS9ll#9%=sv{lUz+$}+{3kv$E1(p6u0gi1VMWQMX7GYwbb)*3-=m15PcqiuF zsZG#ai(on=RwVD$LXcQTRgwnDK=hhW@^?Y&e>WQKO4!SaTFiWN5Lih~w~eg1pUZ;z zE+3wu9syF`rq_Y{L|{15oD*3KWic311KD$;D7aejqhZOV7-(*&D|d-a!XpVl^@W^; zb1|nHr&8VlS2b&T!?L(OY%Qk64CXEziCCh=VzpgG2FV3MYj%~`65t6%a`B^NfIxwu zQQS{}fF*6V59VC}I%5W5siDBbMY_%Eu#U9o80HdN4r)5-fWTA=1KJGTsq8i?w0UXd zkSD2WMzhs{U7NT888Rz!8p5R4A*GhFjl&h-*3Z^48rrJDHh~lnqDobQhb%$vl%qjP z#j?4KNXTGen%&u#XhG)l3^h-j3{WX(14_sRcO}rSCP?y>EmZ)5w&|uLrR|;sVtc-|HtI}7wU!244q$0|+;;Tsg`l*y_B9g6hA#V=Da!KIx-~fDWtXS53GJ>H? zOio|{i)ATp!mugxHy`>~omWs67^j(ef&wH|53n{~*>%mF1Ze9C+VLEGlEk*)!xyB? z+9^27Lg{gCYG^x2)^IiusK2ZK07KFXnEL=xu~VC|{>m2sTHa6{QCBX^PPitQ1s8nr z9xiPA_o|^O48;`Gz^UlmMVVgVm2PZG)gtrL);^??ITGwevZ7wbxUE@R)aP36)k6rdGWib$Ca1vG1qCwD$U&iDx*}z&m()F-BYU zK-P$`08oeRZKYCy2=>jExUkLBNtGm91tq?Ri@zNil$ryH>y*5faeRP?4T(N z3b~MlKtN#GVVZd@5A4bn_9sb8)DiW%^V5IAikh#1(RMapv=PYVQY0geDpwE`S(QNY zjKW4#7KEUS7;uQrbP7=Y_P1*0v3{>qp^u7wO?aPNn3$ycwoQFE`vm8Wb86`#XV#I zh<0(fq|CP~3TYxZCcRoLx`nzSnG!&($;3$NyTA)+BrsWd_!DF_Y5@^h*~{VD5tz~IkKGELQ#`sZ!&LXSv8L4!XiQXg#$?FRYP?8wm=xj;BB@B z0MW%Ytr<50$=ad<*0rqnQiYmQF2Hq;>fm-Us;=<6(P-48!=vextc~o9Ib~(za=r*J z4Qxo6b!#`7h#SBXTa4R0;J~|ambTm>AFBKt02*A;2-u2a!jL;PP!&V^2$f2l%dLVV z2iNl52$t0gC~Zkqz1^kg9486_!l14iEtOo98r{Yuyb3U_BsptKh>~c|14V*qfI?AU zc&5HdE}4J;_X7b>=yfYe4M7NkPGHi+!te?7BoupY`yu2XYGk4qq(o(OJ2`Kl3mWNQ z?zBclAmMWc3{B)ph*I)IK|Oye-elSpc-%u@;F%ZC6i*FkL3!v~rLUeOYjW%SCmVW=BR5Ku=YMVQy8TR?rGx-dgN zENI*&WU#=H2=wF32qv720fxG43YaINC1B;ehE#Zqrp}`cffYvkPNLDcEgl1KcOnbP@jmJ92;j+5iXv0s{d*5PoWvuTcHqqO%B1 zbdtNaL^|GQ{t)3VEnjx0IJ0_ZH9XbjD)`J|=?i*!FB0c}iHxJ6x7eCbsPzbiy$yFlCpiEd%7cBf*_3!EUtKr-V+BsW2nqU=|v`~M`yIy)zT>Ts+wayoIrrZ zBNeuHpsPoSD`PcsIsgHz67BOx@rJQztJ%nvlew+<@h{jluMiD@y}YGSt~$`snhVbD?Q%Tc^sQ0>lI z7G8aG3(N|2?d=@3sK%T`I?`9nL=kGI+E#i5et*#_2b8c?Z_E+Qtn+?v(JuCGjIeNL zvlr$#pefzU{RQVTXYtsT$WmW(K92pOh}Cf6^NzmrBz{`Yom=>2aH$5kvp4e!GGq$A z2lH~pM~Kk3(2U!o^8$`PE@1;OI-#$`ugGdWZf64OyIcN3+8Vh}mIF^W1#Sb^a87HN z)n4KP%~=BO3w|I5HYVAN3SKv_yeLo?*HBQ)b-^#ggq1f@>I8TZ>XwT=99NhwY##u{ z7ljGw{U9Tz2JAKNaQnd+Y7vWfp1*PU9QPz)Oj;(-$9mDXKA!1j|GMt$7APb)V0I?yhvkE@) zx$!tAkHqkmA8kgmqV?)&{J;gmpKq^dmc~^Jhocc&5qfa~)-#?Eu7+@}VqZ_CrH&NB z_lY7@ylR1Yd75P{*gG7au>i;^aa7RtqWvMT!Y{~udP-AI=8Ht2D(t%ZJC;g!3^Bxa zW-LLOi90_!KQe>iD^98a%aaJMoRJ0$(~hxS-!IH;{5KUouE+-f&!f-Wg-!?S?+9;o zD}6CniTjLQ{{TsETr&4K3t(@N#(c!AlBf>|IEGy1791IDF?^EAKtJe>FJ+*m@LY1* zWC@kXSxi2eBUU*-#3)CnhtI4TjPsP`CiPT*X3ZV8{ovd^nS*i`d{<<%1W^kDBh9!g zSPjKWqeq!ofJM9kFx(&Xh+l)#pS-kaDl?LOeG;qNng=)omdC*}pD@b7ibYF!WiK@o zDjr9B^1=QEmvr#X;|)9SGW8G@`!P{OCX%g`fd%`dqCpPl_CS+%b-K!uaSjqGJ zf}aZaBiTar?Ee6;nc%b5J!+P(`z()l?E`4C=`cF?;tsM~rXM5beBM~wUbUL)Rt{1W z{{SbsnBH2K(_4-qO$;YudBYVcu&1+??g<@ahzZH(2W}N|L51GP^7059ioX_;@;Is3J@w;sALs2sd$Mj@^AEBCmF_kT9!=6k!crm4gV$f4Tp^l%&s8Pw6!i8Lg9*U7l3>@Ik z)-#?(F$gRvGWzPjKN5y56wprlnM0XPd*1qfW>FERIWcAEX+6wJ;^ZFc{llL~x*`x7 zA-4K3(Y2Pv@5~L%_Dp4Qk6N?u zQ3i$b)(d+65l-W^Vwh3A;td8vipT`*aKd_0(?BWgx>K^|g25+f*QN0+MVy6WtKIc2 z)NS4JK44H8#$dX?W8l}4#O5mt;9GU?ue1h(h0@!=*>+i}0+VZ|`SdG=XBm?p8%^gT5`mR9vRZM}t@w zbwT15ZoCC}<&Rz{f{C-TTTDL5cOl z2VrPYwXR+p%n$*0b&`zo)B@3Wk57J#u_qB(sjgpc;8rZPfTr>l`1OlhE{ouzD%ZUE zW&Y12M6(nn`U{2>Yb(IeUK-hjD;H4s1wty+#W7$!E7oX#00iY%x9w8_DO$AE9k1Yt zh0Fy{R$vn-F=~s$Rm?qR2+u=3^8pKUDoxeo!t3T*=nBQtShvRjZ+Xz*gdUgIlZ^f& z+A*_!f@1iUtg*gxvD`KGTwEvl{u1^6`_5trHvfJ|9$h^jS->Tw%xhz#)~?{ky5 z0X-zb+jJ=^-8ES8a+2GD!a}aznN$Nwp?$acHRyyk6#`WZ9LJfwS4iA4YQt9UtsgI? zM8&`c1j@DTkY76{J!OOk0IkVIHLOEuRss!*h5+X*JzDUFbff{b2Fy5iVkQTOr~!Et z-DElQD?ve<^=-Y1U2saF@`RM)m*w`E_u-;73?R5`Tv(p(iM28Z2b0y}Jgt@q02m7B z`H6(DZe}y)OBX}~Wo{x|W0EiC`i~>;1&vXzv#0@eZ^Hm0lKsE3?i}A%@%fkC3#0v& zcxz97V9IiG>2(c4YKcQ;MzT9O)oqt`C?FK3frI7PEwI38msZCm4ovSCXGshJu2;9% za>C;Gg5#5Fyh5XQw!8r4SJDequ!6xwlVDcim;i%7GjR>R-3aPKJtLq_{8N!?=SKI)qFhBiXP*7O zIbc+%X!h^PGwg#ImbZrOQ}!M60Cq?-ilJ3m-Dg($OIjA3Skmr=eFkt~s-8p!itYhq4kOw^zn~$3B+;nXI|UY4dp=0s**o zFEnG!RdWfh%KFpIn_*(fq~lomtGD+Nz1iiZ0tuYokcCAbIP{8UVU3jFOoQsc;06xR@}ZnAi0{6tR)uV?ccM8A{F zwY7?@BV|AA#scN!bMut_YWW!m_niEF;9M@GcJPu59EjKbsyFtIGgQq5oHTxk^BMl!cf2KJ`ufG&aaitg|BbA0`|@p*n` zwh(#;+{qhm`8DnFrXYxnBqa(xYF%2v;pPat7V&@Vp&~}S)hEpU;)iFu?FqALra5It zsMGJJQdx|Ao&Nx3hPLDNGg3AmFk8~l!;e4CB4y@ZyiWF&GSSuI*;NdKVc;bcc_0!E zPovyK1;o5g8wN4$Dm#*Qd!7o6~?EAx0SF`qe#dbhx{{TO5mIoGa_vp(Yz^BRhWy`_WshgSy zW&MxbJ4;99{=!+S8tE}K8aL-;BE+Dd-%E-2X#a}TAZi>_IK=_{*X$lJ%a)7pLt{nDmiS|r*E`K zoF$^+$isV7+O6L;iunTva)FS z^_^m4)cx@~W{<|Dg6n^8>_y6UJm)W@cEX(VNxw&^W|Pjx8!XPe%IK!egQD;cIrWa5 zB`8?wr>)|k)t7<0>IM4{0^64wwxvOUZ@(Yk$P{>jDQ?!~GeUaz8S*i#G(WlT1B)zo|zq@CWKPOCEaY`IOeh^h{&aodL(hrv;ce z9=-d*oFIib?C;V&QP-7w?k=!3VZ+@o*m34^R;pL>T%3>Hq(aH7PPi+%a zr9L0zz-rM(IJ4%7l2cfy9CF{8xhF-xa*L6j>aMx@fz=gQ7GNsCHo7Hh@eQ@2RVpd? zVo|d5*U>B>VArlH7!C)WxZZ?(irWWSTdWPwH zzeAvxDDP9A-Mo(+x9dnGJ}J;l1j*(ygzYdqP1^_wg441Ag@v8I=2QLt0-fi!{mzSDC}X?8pBA zVW0%FgZccJ8d1s12c^Dg;sHlaerCdbdd$^TkNE!pu!ZPtI`7o{LFbbmwe-iL67geg zC6|ly;uuj%M6=t(~CW;)3OA8J95B->@)0LkO z_u5$xmZ#y|^<;u(Q&H&<6baod^-}eX%YjRp#ox?0eCsUvAvHJb{o^*+B4x>L$zqP3SdjdwOViiUI`6kE%XTQLSb%am-d7B8s+kO@u<;iai3{`k6vNf!ZpBatj?nYiIT9gNE zKDd@@+Ue+iz9-A28qZzaegx!Gdbm+LL>He4Ms~>`t)KR57*pr{hA%O=Of9z!4b)2Q zYukzb?_syB@EZxRmd0RV9Jck!G zFf4ZI>((IlV?NK>EL2iNU|sH2$TwwBkd!HS$DS>eWD4&;n1KY*g}zN!c!NQ=I2;GO zQlVU#F+R3lQ#f^*?p42Fz);wT`aj6EGjB4(mmbq9=Ii(Ol!b9GX4Yr0E0_d+4qyiG z{o{+Vc6jr?IKEeu?=9Rj!9ITE!TV0W8msoZKC>{hVY@vn;QP#gYT1MIu>oSVqcrU~0Q;=_4;AH= z)z)jN|Jncu0Rsa8KM*7U9tDRgDzRFG#?&H+?Gwpn7#+eCPnB|fv~eg5Rh{b?9yaKT zIyAUE$af6ZEstWjEmx~iSI*%bmc0I-scT;CYeNfd#6#pqh`gSGY+mCf6^l@+^0{Ez zZ~$tMBL2hNC0)}dtO*h6&Tz{y60(8Wfjm-aB1jEVn+}fclaz;42(xZW+a+12TG>gE}G0yW|xQ3Q%~f!v>XNV)9Cv#pzVv+@N&uR8t=QS)4Sa*I?J8M+9S1lI=yCe=M=zXKz+ZYpw2OJPmMonXK<<%*8 zu_xYG#YK9p+(wuVPT#Zd6WbQ+0e`57yT)k`27xZl7k(2-)I96MU}>*Q8^H5WLgf9l zL#V-i?ho7T5u1_+%sHdw^N6`=P2FI8xPiO%=51nQ)OCM|OXC7&wkKj&cy%l}Y^Cfj zD>(6fWe;f$9P9Tho>cBLw%x4w2-(SuD$dsrsTA-=S_UftfrTp*3@S!Bx}f5H`W#`a z(RJpcF$c5C&*Bh(u&zZCnNwxyD^F*vI#?eS2`&g-XiYN^-rpG85H*lAcGqMRS+zWv z<@LNu&fiZu`%DHQ>As(2E6f2jIePEXp{gYe&~@rU(QTbu>((Lg9Qs2|X}WH!*eUaH zE$vWBDj@3Q;@N9N_#&%^*>`3~8l?03nkfPb z$lwH7R@W0;Y{&`h<>mWLL9Edh##09zk>I7}TW(M=WABKt;K=b!0*&#k&Rp#F`uxYU zJ{4#80D(ZB9G_mWYWC-mtb8)I|5~_ zYjkUuAf5+~7#vcp=*C#>WWE9TVg#IueU>F@_v<_A$KDerLF<^ff`S0DZq#H06^o6| zTAT2R=^OJJ0af5mv$KoL7Fxsz`4qss27Jp*J`%yYWhlztA{^456LAtK)YTV?IL!x{ z-;BMY_1<3#mpxv*Bz)v9hO)8nahPvwA3gj`$I(tQSo>}%N(H!175Vp#)q)OmXXT4{ z9PX8f56d@N;L)BXLL28a{L-)PrBxl}2=)e@Wa1Kw6TV!oEX!WB?< zPdD$i^@8oR6|S`|LvH$5kJfF@Do{L6(_h^%TSSxkqRI_ctyecJn+Pl(&L$*gmBirg zn!cc)Pq*R>kqQfKU_8MrEsDbdmIfTJ1$PePIByhxBAc$LSILjez7H5!PBOFfxQtma z4`wKN7|p1)sx_p?Y@YG!gcRs#>W>$eQ>+Pa#qf491))U2ZLpU`u)-CQrSNEZt|d#|g~*s*HSch1sMlibRfI4d+{T-a zeji5@5C8(sEracs)(<7WUtCWLdC(h%0t)Vek(X6SGV)TKJ{S`~gNF01Hgy(K{((%s zhHu&i5kNo`wK#Wz6h{CbQU3s8#XyU@3~9;haf)|F)1<*srRlS7NPwHA$mbvM#8MOHU{v8t#6x)4SB zlz$><1Zi|O9cuBfh(Xl=()2!;k+S95=K?UNj6-em1);@#YA#h!w}YPJWe$b9BZ`hn zy7=F%FxqERF^%LU+^Tiq=srwD7( zpm}wV3PtO|=R8GKyq9~<{vuc{)#vEl!1sYA3WryMa%S_{F)Hl9FBZ_^C-diR=hnv7~~G$5t38a+mCs5BCDjo zcbUQMvAi*6kFfTb$Pm06BbzDjJ_0z$hg~5Jihd93 zPywnu*m`**Psiy6AADnBcv#`p7R_Hi>k>}B})f+UWgm)CXgupS+BJh<(%tXdt-jQ!drqe7M)BU z3T;^M`V@OqYAP+bvu|6dLV;-`~aC387*Dsa9 ze=`37V2MEW&5j?E3k7AnzHu6FC03v~Yr%t%-d~m{46V8lMfIj6WH44*0LMYO!PS7R z4n(^(!vTV{KptzK6B7XgROgR)co~C1)hHHa9rN-+!u<{57npDEddb zc5LUAIXO;?fhTl~?6?MMv*zZ$a~|D&eRJ_10wshKqxXl$S?1uGbd& zN>OG)CquO3WJXC06% z4^sME8Hv1A(23+!^kPE>+myxI0=;`c+ICZ+j;}Gc>^om4Wpl>@U6@RLetbj(0?=El z`pXwQxx2IOU?&HF?7t8^)97Tj>wKqjp}DPS z)gwsS?o*DxWqSVLrUld4Ncmqe1zJqSg-{chOhP{al{I{u_={w)I=$E0Rc2!vgml@b zolD~<$Pa!}dcklJvkquetW?i@l}%AD*6Dp9JF?Zv*~9dBmUe)kiaR`;;8M&-hC^X( z8$*k}X{y936xD6d8OOmggF?C0yk+=m8tazwVBQiwQ)4tXe7!^oqzqE{-fJu~?VgKw zTQ&1D)J?$c_B?ef@rvZ$E7ve>(9Bg{Y57C2x?!ofNVRY$w#-W2nkOvst_{&i%zL*p z>Ef*T#J*vNB7*I#KQJCvSE^h0{{WLCu4`R>UjFdb8GTXWP~6q~uyThG%WjJF&El%- zYbqV!#xaKYt5xQvRZ0w-+48M;mvvg9(`oC=5bZz()vp!%;y$Qsn#k7W($z%jr57Wn zJuYB(c&G-#D2M@)hIf({cDBDztgzJLl=urep6Uz7Mf~PPAqMhP`B|?bFqp(ll;m;P z!qi&V_7f`=$U>i>Z_*`L=W|4lvyWPbZ4<{LI`;O6{VPXf1&S->sz+mB9^(Aes5GnD zo}CM!@tY;_SkS;66`<(#lZY|~!RI@DIPvD^^t1*^V@3Y}9)7hmri1v$q|dspJu^2q z6!0!D*qXj6TE^?6URbihPMR%D@KV$SiYDtFU?Ixyv-ZCV!1ZXQCTxL7eIvoLBtLZcvC)V9Aol4OV-fYMyYfnaTrU zwY<3WJ*GMCb&W{s{_MfD1x$mYcC30v;98+A3Q{~%ScnbECn>7-rF(HPa*@S`n*2B1 z15Y+WsdwOuNLtrU``AP60SK>>xqV0OMRQc-5lbB5JkfZ~$IZIX#x{MieUZ{aY~|_L z+%gmzNv&VM<~>50DOK9V5Y1wPq3!0l#HzKNHreZ09v=~7bc1#l9XuN+7#d$xV1SJR zJgB0**b}PXVbSXyz^3QgEr{QYWY6n(DB3N;o(M`12~-VCorDcAXjN1m}@)zh0irk;|fkmpSou z?HBLlb5B0lK01kx!F;=WJ}G?5@t%#zN!)D2I^IgA=oc`?ln-`Q`CJMJ7W1*sKWe7+ zFQE{}jM(yKQ{zL$dEd_;cwqS#_8%e5)%6_;Ts$L$^{jOfl?zZD2N#R$<`HXKAaSIl z4`jr9Sm6ee&OW%BEDLl$x2XNolcd}Gl}ej5iraZ+&3-WlpD}&HIStHx<>nGK)L%|- z4M9u*$;k5+Z~*sBJ={(m%KBGugb^w;KyLb6L!)&3Z$7M@W^MtEt}555W*poA?n4)# zIYL>TIT%_Co#hJ!F=c#Gjpn|ErF%HUS$-O>>9?zr`zuhEi0jTabCkL}l#yl}n{|&uBMg?e7=0b%a@2c!vyj;U}0?0$_NK)x`@D3t{ytYN)=V- z-d-9J@ctolqXOTym`20X5ReY@DH&dyrYmaBv;FGp-u=aZH zw=v{0%Dx#!mJnP^(=zH`iyv;W4^tyEk39noa1!+z|GcR zEM2E|pA(YB)D?C$S-?S-n>Ch9>z0-Lq=Vg_AtLw}yZ^A`v_PgZF;*M{- z?*0(tsNJE5VUxvm4Pm`|c239Ba6U`OrndUKkL7O9Tw`y79qDK*hR*D&_LQv( zkVoF~KCla*k$7DPq4~YAZZXq$ldiG9JjouiH1!3JU z;2FdVDKhe34PP8_>nft59o)RvejqxOpf;qj1^U!Zf#C*R0=gGYnyBhWRe}V(Uy;Jf zv@Hu3#iASU3}v@0vP$f8>d`A3aPc7edY?awQsAaW`d$~hJO(P4g;F? zeDxola8M5jXUrwUCfM|52?BvAO;=DfWiO zP;lUWLc!=q)lc?6?rQ?7!{SI2O?y*F;>?ciXdn;`Cv}cXMA(TpdvWZRf86ymMuNVA zcd)oO7`#mlcr>Fv^BDy^tVWqKV*BEohowZEK)n<`5&4Bu!-TKAx*%H{&$h{ID=P8p#Z0b>Tve~G zG2$f(`8(PeGv0G#a+K-dOAk2#p5bEwQP3E#)aE#EAN2YvQq95GS~{vy=M?gEoNOT4 zWk-TN%c`8|hLBhr#$8*FC#0x}tifVh`DOHmE)AvSp?%5)<_$=xfUt&|YpaTy(bnj- zeV>WPNAtft#}%=Q9Dv9eURGUbbE6L7&EMGU+i;+TtG_EBcOT>gz**CP>gW|FP=T(V zO3b;&X8!;e83uM83O?|i@-%GqniqvZ{HDK2%;W`|SpM0k*vqZI(f!lD_?r zxfZEL{7kx!r{(yTwx15XmyG(#ID2CKge zR;x7}v*K##`U>}$tT2cKO@oJYN=|*@gV9FZoohOn2KQJp9Sni)<}q@Dz*^xwY0ftb zF@dnNW{{Xze5xbr*`3ESgHM(w}T}xV7Yiq3VykG8KP^=Aq*U}*=1$nM7 z$*bIV&zRNYk@tjj#Z_LM9%;mKQFwj>d+JlFmVp5Ac`e;;C9|nUeN#}WcB?+U9+J*X zYiGY;ecX2~D&w$l9bVtzQ{uDu6;*%24HEV4i$4R}1lA$Ql%F!>Gzxj*`GP`;;Oz&7 zg*~R_Jq?(Ae&Di)$F}!@Uhzg%1#OY~)9((Nv$eo!r+jUffrBg-SF?4nyxC*oDIapA zD`euAOf*?`1T^T#<(@Nkt#U0jmi@m>e3xI0vdH_4@ddkW^09i{FhctZK*DiQRRwKU z)uGpyxm?q`qhaK{*EIuF@bX4kSqt9efmg*k_N0oTNbh4?H|_d$zcG)|vIM~`J6QUb`5~ogPz{!rc_j(Z zSAsP3U%Ds4HTtl77ws@9OY9H5u4WgNrLK(1&m%?dxAYMQC2w@=)l0u6`v6EmqF9`IQ;8C@EL6W5#3U zUKaJ_?87k71DtZSaaPmoGN`~6&DjlkXvZ-IUzS1Wt1Gw$_fOBBj}pc)FUX^5Z>ho6 zOJQ$GKz4mL!GyEaz%cb48_Wgj0RjdxV$G?_@jTMeuRyO=LyjO3L^dXf?%~^ASY`m0 zuxas2s9tb5AYCAvzepfkD$Yy^b%e7L=ZjbnI?Cp`HV`4;9L&HpQnBqRRqPt(bMRv` z!q9&DFRdEPeA=t4TqEh|m2GQ;s;6Sh*Fy=n5f(kpy9pwK2 zvXe*g9$e$ob1vSGkyKNLsyguukQ<~bj9+ckR1=T}%BnQmfU+=Mw&JdTEq8*7*hiovM#u3kKP dPn+Z(a)kRr7Y47MtGe}P6WdGg`Sb5T|JhP+QWgLJ literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/flower_pansies.jpg b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/flower_pansies.jpg new file mode 100755 index 0000000000000000000000000000000000000000..dc795ad3df747f457f0619634d28b0d5a979ba26 GIT binary patch literal 70834 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 literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/flower_petunias.jpg b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/flower_petunias.jpg new file mode 100755 index 0000000000000000000000000000000000000000..3da1328cbd77fc6387f26789df4d1ec93ed3a5a2 GIT binary patch literal 52478 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%0AL;of3>oK+(7fNl<+pz{tnA`QGLG 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�w4*wD5`={Z^o#=X8IRGwC%=Lj<`cfgHmXyws~i}j zHYdo1z)hz9@K!XdVfAWepfTI)XX0bm>i(nS{xKgSzVgzkzEZbXcqL~SZYG4KH-{{R zVky@oAa*r9Xc_uqnEwEFlzrG-((wWg40re3O_EAm{1LOVp-u{_X)GIe5o-08jI|)Z`3Qy z!*o8BnFM)j{mUVl)$soSsmp7-{k>2B z+5ij#0RRFK0}%iK5O#rVAoxZry_9Yxv#o*LC5wY^f8R-711miUs{-Whlcg`!#m|TA z{PYT2>_R27y0gT@@U9Qi#6a~)G!x=-;c(1st*I>UCh&w>)F=XV(0DaqrcI!;G)kd6 z57+Wc2M`KvX`_=xod;`7a~=m!W?61ToPfJO*EN(zDvCFY$n$?8Jf{$ljY>uq{CW~# zlRja{H(s#z8tIl@HsPJvPYP@uM8gzEeY3veu3YJn`ModlF!SLQHS*_ zNyTp^&U73F7vvlu;NUgKsGBdy*;VuDCU3usxCRTr=@wL3CWSJ?9aF&x*Xo182em;} zT{dL4>uFA_|*878hLb{@XIn71wC#G$-1#20Z2dExa2}Ghc4RCOlu46|rM((VaPF?=v z?Xm);u+R*0T)EHy4#u+d$Hy}IvQV^f7GgKCivk-w%cmsRVQuJmf>R^~Tbck@+GX(C zI$Vqg%)Xu~0;0vD&PI7=fwfzeE=(+IXcxi6T3~RBDXV6HmEtDO+cA4YEp0O$Fa^M` zG=h`^g@7Sp$yv&QMXzndeg>1`L9J6(faaz8Lj^UI1vbPNm&)mu=tyIEB2sO{kR^ub zg|%s)T(4*T{{W;?IvUU#A)!LRk(9R>M_4ojyeO0=nmDW@WGV*Qb80At?4;bu>AaWC z)vrW!(?JHc3Jdl^h|MmMp=JT%W~GBbU}CwbaMgKxyAD>YLCv64l;tqbF*M*S*RW-< z^_ceB0IcI^H zp;|_`P=Qz$hj@Z0_@4xcv}6GbE$~%ss%De}DrtZMV2fr8MKo+HH>iBNyyR89M?u3; zI>^-vS%x7PPFdJD7gLB(356ErPiJ4<^K}JC|9E@!k=` zm2R#m>wY)k3@8TR17r%inkgC^8I7wNJ#r0a9%dvY<9-s1Yb@RO9751lT3DfqqH#to zMgYJ$m+b0<0<9r@E=f-JdDO~MKtaOs&M(v`mTk+IrEv2V+^9)n?Nyvk#7_VWD&DRf z#J~oHI4~%hZAhY7Nmr;%LS~CLG?+*v2Zk-Kt*AdiLRjhw%37l~#z5tPi?IM13^8!) z(#~Xfl>l3cvipwcWYAX8jSQp_mMaH%D|a$;x*DR&X5#fwS6sqAq2#ncP)Ch7wvw2L zw}@~8QomDL>6QYGfnc|y)xz|Eq5%}Ju~6u(F9C{AsJfqavGWVYLQ4Pu$3az{FBRem zAj}MagC`E9JIIXzR@%Y4;e&%rDs!UJad-{O8w6TV8Q2my28EGfn>xtd^)l9JbnT(W zxs=)1d-niq4yMW>NoFf0nB2pmQA0R>)A1b?#2XNQa5AQb&WNNN$|Yt3$_7^#b}j@` zR%qF>Wa?Z{QL2YGs{+roCeBMb?@)E7gUlHvv&s+@Ml6F@7{m2Fr?i3!kW@GwU|92| zLL)J#1$S861 z(2oNNWLV&ilPD3bf%J9|JBb$#vC5#nE&+5hr)wGD<8bz}sUgH3kc5gGTW{|SBPX+Cj ze1mtiyo;p9pnX`?DtJh1TY+Nx9AL^pbx}-}WJU(Zh8zmtv3W^axH>jMsYoeSh7=i= zVEQzq0*XJRxJPv*ODk1^Ht_{5jb1MJ!HMcAFT08kt1(67^h<7Q(Onjs4dx2)Nk!=o z*9Pix*s}WPO^^hURXhe~-j|-xY6*@+UH(dQ=$(#n$``q6%2R2-5rhLR6uA*ES-rsw zY@$vnKzks!(PD&}@k(Tw#mq{bb8U(k%p|J{+hS?btn|l9IBhq366u+78m(Yx^zr+G zroyGw0vMr3Yz(Fer8yW|>Qo%T8)84w^2FZzL3Z8PS4X&+2H2+L?(mY7)j+VSUhBL= zsu>_qYN%0bqTV6UuFIWd%7;TV7?+2I1kkmE8W*9DXj4)uJ~qE=kJzY)Jk+Q|BIfk)uiZ+;_KqIVSKntVG5x=(;x2)rJr`}fSD#>M&Mjkh^^sd(G%qUbY z+7wmjYA+SM90gNgzOx4Q`Bq1YiEabB0O63AcJ1acHsH5(<@fXERFH-fP2&b#!3$oX z#Eb@`H|kdl`A$+o_K$85{CL8Qgtn54I1?fw3TR_$acr za^g6)0CJZfiun+vC%0*#1h>^WPuuyJYU5Yfy@|O?#)Ay2}LPO%%EM!5(o*Z4(OLTq|yS|&}_J(>suOs z$c`_Y(B5sFvEx(}b~cT>qV(WHJhiqVHiTLliYnU3mjaf~7)mbN(~-2K#0HMQV%eUy z(k`Ck&N;ioGs#tdPPHeg-xbb2i;N=n!U2s~lI=>nBadOGtTjw)P+AHt%jHXZdgcQ% z_zH(614S~TVh1=4tQj=9tCd*V04>2k8Kw_GfWk(WfZy2*TuWqpudj#+m)ND5&|yTt zE__V_okUaS2pvFZktm|ppp|r9tbpexoG^6-6eA#%^3)lo%U;lJ*Z_eTsDjQF7B*0o z*h6;YrE2En`m99bme&>GRpK%QgC;|I>;TV+V9oKpuj?h#trfu3l%;4BNL6Dsi*{oz zOBqsec3Z?n8#%C`Xa=AxxqU*-*eQ~S>;)kR<%pXgAw`WUSE5&BHBO8_WlI|AtP`}F z40@h_*RQ+7fur&$cd^|)_h)^xX8xtikwFDU4h#jr7Ps#*v0)TauVw`}Y0La$H z@KCj!p~BIkkk6?vHj#oM$fPBNXweffU~7f8v)KZo116F!)NWR#x*y1YxoU}Ywymz* z_2O;g+k5M4+SC=|OHfxlCRt*i08Fn*b#2A(m|8P%jmW{jURd@R?#>}n`x=8QW$DY=>xtigG(@k zKsZbI5`4CVyMBm?B&lg(wjtVHB|jIhppt-a006D5npG~VV8yS=YAC>Pw5@tyJKNA= zF>@FN>;NwTcN@J%gJ5}p1ym>&R`H|HR#YZ!A z0cpMgP>KM&J3iIVZe_4k15j$Txki;hrV$tr;zYWL2;~Kn`~fW>;!+!dLP=^xO9PF9 z$RJp{T;1cfx({`GzWfY07C@}q zSk=)kCty;xGn4|%rZ$K~4KqNcE;i1fc&}ILaKt4dt+42upbc{)13}4CF!}>jgu%>M zfayDCsVpiadO%|V-cw+PGFwccib=2w$N*CW6g7aTvQT!P35_N|RXK1|D2}kcl3m@P z&=e3XkW7&1X7Ciig|%=ZRSJ~_fm}tny@4*NxI0Y})4ozS72mRH>Qo68iQzO@Q78xW zn;;D=26n&!{HbYHl?^WtNO@NVKvZmR0l4h|%S5!Wq`f0*Hjj)> z-Q(iO(%4mCIUCyCGU@sgfj2>_Q+HL1H7Q|B8}v=yb9kmZIQMMBRpY?i%{FE(wQya8 zX^U=^=!i-Xm{NSq`+#BqWVo=%q8t}m+x`J^iaDqxEfqlg(-=B5M3(ox9I_y~gNrZ= zjdBbHuswl%NACFo;-COck;u|mYH)<|R$+d8Q7nKd%wLv@`mVBhwEE@%+UD;`Qt|_M z2KEP%QOZix0{Nx;sM#1@!KTV!N`eBHCEM9`6|(_A7VXMc_XDYd3rcSl)HS-mqS}vG z{{WJO{exEKjanmx8Z8#&FJhwQo?{yA@JJg4*p#RfkW9v}QZ)ymwWLS2YAOeCOkXpN zqX&Uywn6}NhX4jtXrMC;Lnx>YnP`;~x{3UWI-*hvfZ1`*$@U{)`9M5kJFxPgRl%05 z;85IIPPmJqvbAu$9gA$T{6K%ETI?3L>8~ z9fyp2c9K(RnO31*N5kJ3i_3&15HHYulsPR5gQvq2PI)RPmjO#? z4GeARyq_a1A!?&g<@UjrC~quWUIY=LaU{j1w3w@vhUD9$yOBx>KtVO_jd$xrWj?ef>|~IW0jY51uvH@lbr000ZS%Uo5uZrO(25Pc4D;zpr&A}G6mS(2PN^0R2_YGz z5Gg>67R|#gAvg-S3t6~{RlDd|4Z%SL8G7g$BXA`Nnky=0laNt&Y`|B}WkNQM0n5f6 z;fbggBnFE?O-u~zv&V_*+(;my#H6MeB=*5r`D^KzkJxCWR&+N7G={lq7AV1rK`6sc zEiKnNCE=7cWV2G}o{4p<_#E}T7=6bN#b z*mxEOFj~?|fz=RgXszRR`^C<@n2APAcU#4g=&ZN)!r^OuRWLB8A-+}z*2|Se!ht_e zprb;}vKu>iIS3)fq{&$eRU0hNu9Ldn%~um49ATR#s;O!MD==lS%CLO=PJ_cDzTu(U zf~Fh7>8RQ>Wm-_=7j+BEc!9u;4l9^b^@_qolC7X+l#8wj{calFDVQ_|al-*^wADM5 zq;8BeZ52N2gA(YJUCwDKj7;}92(35LZpftlAZYk^uBo&f$Gg%9a>$gWCc5EQ+sZC3 z;EO)I2*DQ+162jaGqqzwP-HAZyMjrxTLED^pi62Qc=8RQD^%UC;Zz37+Aa}5o3Ql; zH37gT?H73(zG29BFycK+t0>ekqzFq81Z;tVZ1@fWil&gq%Pe_SvryIala8dr^5*<4BJ3yA+ zH!TK0l5!{`yw>Li1*+o$RWT32#A!iQYoZDu=wpzfV%w0=E1o0pc}l8;dSnLYa7}G% zz(%oP0KEA_AUm|6lf4T)t~Fb_txX-p6|IDph5JU82(T6i2{w8tL`8yWOT1#`H<@@| zh16RIII#@_)PT^!;f5u+p3>Ur&T%MhjlgKG^0>wl4LOTJV|;AqOq6Vesiit_XePvT zJ8oev?J}h5wwxm>82kc{#9^8zHF;g;{h21@N~xbh`**A;1NgYb#!( z_7)OBv9@qC??pd~-i_iSYSUfx4zQKv8#!1q;ioYE<$pZqQ&CNHS~pVZ{>);pY=@ll9z7lm1Zu}w3oQ$3wFa0Zq>Z(TS#eN0pil+G z0aoDv<3Vjgzy_@=k&1z-cV1Azv@DiEiAHeT%7EEn%`Z)m>M+wL^(}Gb2=F!xpVB@! zy=ZdFc%29h)0`Wzs;*crQv{P52}Z|4`T~J=Z=qdOQsI(X6H(SNI6C?ze4)!p3KVRJ z*vv_~m8UjG9?XJ!1KfcX)J+n!2bwB_Uvmh5DYFeQm55#C2?eSs$X)I(0+3{@3%J|3 z)q8lTyL4^b*{6p+H~09AeX&nf)-zX{<{Lu!&MzZ6W%D(XD-l_zC9b0k{?*H9wLz}x zFiJKJ;LyJuN6A|YYyx8N_qu^k>u>{dpri|Jw5*qf$I+w^>-YB5eKb;FWrK)~R(2(l(wokS|P#Z7XON$aRcVzgAYf&rCc zUJ(@YE!SyqlDPJ_EZ0)mOD%VM0aQ>x{jy{V0n3>t13xnYS;*DN;FYQ_Rci~ar7GyC zp^(aD4`Gm2E!+geV9t(4QH*6HFZ$BZ7MVPib$OXtGxllHC{8bkJThUmx&R$=^%FT& z+rAT$rC~XKm1~-wOk?JQs4;ec zp$<=V?4Z2RK~RAbjiRotNn$kF4)9ECH$)RgfN+MB33SPsRkswr012F0o}(MDLBnF# zMe}fSVfNz=i(}o~F#`l>E)JT6 ztTWb1AGvocTR2zCxQ!^@fs>tCAB?sLEn2b9+FJ#^1>>)G{YoKndQkS~n1&?nF>7j! zt0YyF+rEXRtSkA6t?O~Rf{N{;4&0H9pv!?Iy_|q@WwaGzMO4Rbas%+mVu*gE zwjgjN#b5vyxo?uM=DkE~X0@PgrpgZxRM9|oY|)MS#1g6i>Cu6HdW38=kQ`v#$*s5j zf{gmTjMdg|T60|W2Viu)Gd5A^&}gfw8Avv<*A8_4AmYGP4$hOfn~|2%o5%~T%;1Qy z6570EQgJKg4jBb#tQ7cyUIpQX(S^iRaHt#O{PwCv?|29jMFBdzH7T8sQ!NGqmK+@0 zdcrNV?y8^)EP-IrB$0^)!Ht4ZKm!1;1k$8}H4$x0Hm#STWY<|zw*dk;j65uXwKO6l zP9s>L987v`zXYKwIw4i*h#!qQBx?OuAx4lG$WV3Ij4tSW&MOj>Q%a$3NN@%Ls+efT zZv1`K2cXVdAkfKYd5oc2(N}>lxQ^?A0m)EyEHu}U^UPxatrj#DT92ZpxIXH*xM^X` zw7UQ?Eb}1Mtby!=0;1P*bmF>x^2Oq88qJyY;%4EJRU*nLUsn>H(_<@I6_e90qb12L zLW`<14Qd)dC^DF?*fnfC>{7P=NM1HMP|Odq)`FdC-XXA3hb*PUo>fx7D0(TP$1xKY z!^{w6EUT;fEGl$TYoGR z`neP1A-!}qKtBzgJE%B3U;qJ9v_L3>7*NJMO`nJY#)5$t;Fl0vHqwi%@3>aAYl^B+ zC7jJ#dQ+LI82zO`wqzg)&Pb3pIY~q;@ZZEY&W)fkSuu^zkMGOZ`$prkSMN9m3F>F4 z+OiN!8O@x8yw#driEX5(hweBziDxSe+N)V=Ake9c(~N*&D~N3l#x25=4}8u{m`kpV z;Jo^Vhd2y)1-7257#9?)XW$sP&mo3zB4ZHJ7FUdGN{ob8C{#Rzw5O`cxrt4to$~2e zDh&dHGdCcBP>fK?+9E5Ej>RCAqPK%q%c{2~#K&T-0E46e7Ii6@1YuqgvVADJY4%#n z19oZA<#lnkc#VvT>Y}9)vg)rfO(>cmEjccsK;w!C%p+KEl`ggmT0<8-`M|LIZYC zi-|T(LY8QQaVyf=3S4YaG&xAdD7&Pz+bxZGgA}m$097oYI2rLWf|Mz%qn#$0PUnmz zm7%OM!7OF1NPqyWIWEf%NKR?B2e6t_x$as*Oxdg%GYzzISU|!QOP3`C z-K|>}+G1A4v6~?TZAK_LQ#7#murtpBhIWkAguw-=WCY}lg5bSYAnw?xsPM0JaoO5`c|Hi(fk)PGAu&;!B^KF zqRxBk)S)||KS2cid?)0eB0u=TqDH_2@h+2jTlO*7VmSW*8C?2Dh@{aztV=-4>;5p9 zklOzMxDKm4UkF666bUnD5A`0{E|SyiTpWuGl*>0+PwE&(1*!Q`-?d#kRXEVq5YHmlmVi!#nsjzRjCI+Tfof`MLK->oYe;sW8X=1qoqA(8=P@YR z@(;;~o`Lc_!nxo-4u11>UQbSj+;#Vr@0XM4-ORY5j)T^MIW`xL^dBw=Gu>TGK|v&0 zx>09}E!pm+J;m=Y_(K(v-U$K)X?~?SBT}fStb_!Xn4y+PG)ksYC8qeDjSKUKM3kD} zHU{qyVzgFUQe_v7T%&aCY<-L(s)`Op?CCi*T8SmP9&-^sDjWkr{`V+>!*Yrg8CL=3 zA+f6ktziBfK?SY@lK%i@&V8c1bM?*4#Nph5B5Wyj^9YCr%5HLPfZku~X<^IrDKXk& z2};pkBCxF2517G52rF2_(I{6gTbEId+;`#`bi}W14FOC62db1;!e)+x^8f}_hsojN z%ogY8pY0Qhg#G#A`-leVXYXH_3bR#HlaYswU6~=V(77G=9#zONp>43<-G5{7 z%AtJY{X%QZ`uUntqoTO~0Ekcm2d+P;XK`Dg_}k+o2fWt2T%O6wH)EQ^Ti^RR1zGnz z+T(JHdbUNLy9clQoTAESz3~_+R~HD)QxN3pVM#ZprEk36Bd&i4U2793qOU9S6$5%V zf1OJ^0@B8Hqf9QPT-G0`M57f=6VlRtyg^ZQW~}ji!Zx~<$>JjAgFElkzI6@%0K^*; z)?@W_^x_zG7UgT@F2gjVNSYV6B67T2br68^xw&b2xW&sU>*;BD<2gnev?o>qXNaPV zlDee4{e7U;$1efe{an2Vlgs{k{lsL%xCJ55DmXPbu71&gvsPgFOAXA(u^YuPr#+?A z1P<=R@R1j9ei>$b$Um0jx(9~mNbCEmyR6qxl~C!sF@5(B8Z+bliKt;H*UEXrh~Pzs zH3yZn^1|^w!ntHJ-JnPYU98W8dQZfn@Wfn~DupMVMBI(P=f@KLANSyi?|Vj8Sna_2 z^(c4qz0WL7#eSkN!@8rN3<0aVuamE@FeBGi%kwg0P;FFy zx1O;t**jfq?jBZuR|u%HN0@aD+)A=$pQDl!>3Xa2GLta&e(AGX&_D^18mrqxpa+gM zO3lnYw~w@LLuu{J0p(rrW*b=T7+ZVWT-;!&C~axg-^QTOnM&%r`0iV%-$QlpxQ5uP z?J4+BuIvtW{{YFift~%igRcU-)T`ia+F+o>;0w#=pY=I#{| zOWA9uj6JfdOhYR|>kfV;z3${5KKw;|3SQgKmxf$d1hF`%I7`Lh<@$wYk%E1qUE#y- z8YifgvR*$w+MD)o4eu&6ESnR*6S-2BHA2M@#!$)4JscmgyV0VZ)wF>{w}-yH9&m`2~yf;wAI zn3S&P>KIpuxYdzBAeHE5Q)RmG*RofUHdlXcdVtX2^_?Mm;;Wm!B2T8!&<`I!GX~91 zivIv%VU)b<>`dqyyqa>jhQ@dK_?r50OnaMy@f_ZtbJzJA=xKFlUb`dEBG43oM2X#3 z;tg+wF#UOe zgN8HWf9y?zY}g7StUG{2#GuX$FVVPmGGX^P@-K*kpT+7ty ziX7+MSNAJOb6L|&QZZbp;eoEhUqt!AbMxF>3~Wz6B3=!E+%yAl>@;!zA6&0%he& zr^Nd>Q+LL<5p9+HAhA$Bu2jh))-u#fGz*lGXvPUZ1BUtjF1SL-TEt<))Aj0(%*n3pJY<$unl>(V)K zUOIb^*a|0kR^4>~?{bKQvoP8dq5hb|rYDjRG1Z(Tus9`cm2->|-Gbra1@1Mv-{yIE zmvkM4=eeE@+iz@Wh_iXeg`aU3d6kxxa-gvM!@Zz^owWSk37CWltmY);0Dm&XLGT_3 z320Tl-!W#(!alcf6|+Z>-Twen7E3|o?lL-|pt}Ay0j9CsqX1{n8J8xizQ|pr9Ztn@ z3kgig%zK1nOSwr()E*-43#-L^e{%VuaZS@agt4G_3O^Eqj5XYRS#bE+eat@*Is-sJGYJCVVW1+TymYhOgVU zE0>Wv6@PvG;98}|X)=aQgxMN^Pkeyhr9-K#W=?Ou^JE zmimp<)sGsFSoMXt@X-4)&6G9M2n8Q{`sym(oE}~khg8wCug~=x>_Gd$GPA^_wMdgXS!CK^rJp}8c7Ef% zY(1raEM3LuoWVUoRTd1CprSKWrd`HM-9IqL$Z&c*4~3WXeL09XxkWOUbUj%9BO-;2 z+GG;>E?~&8VAb+9-6%X=ZZrdm>HUA~BF`uOj9>@9t<)`cJgn50HYJtfRZcMb>+>_K zWU5{!G{TH}V5J)UO|SG^`mW$Y?g)ASgg`3PLkS1aT=7t$xBRA5;y1_bXXLU9p~1vXs!p>$=>UE=Gq~)1g}3nohdGvwcF>RF4vOUg z9@w%1?U)6Dzx5oDyjE}GX?3o2-F_nZnc1RM1y!`30m&-upR z+-riXa`LyMqAd#w7hY?`NI1*)1hff6=w;UB?Ipkvzcd%+hB8wph?fa-R7;0PIXZ>A zBYYnbT651{A^Xd32bJP3#12Qa{{W-UQqnn_I`D8n71krYN**zn;|I1@QuOj zD=PU}@u*L_t{(OKo56A#P4BZw-22Gf`WPqQ)}=fR9D0*_wD5m^4Xj!L z#u|Dr`J!y0Tk>O$E;q6HD1k*If*Agu&=SMy{&m~~a}!Kge) zFMeiZ0HEDNI}uNbu{A5iPz$1H)9CrXP~pX=&40Kzn}K}H8QTyLTt=XlMuuYtF;UCW z?rBk`VL%l2ia$TOkZ@^r5~8^G@%_Q)0$|~;{{X3*%gWCW5h*6ukj42m-D8M#mB&aX%~T?sjBcYWaW(l(6?ose#qJj$0HO1rEF=R%c zysV@O`$d-ahTu{tZnV_=Q!Uk~!F^a3=+QVp>+WxP#UR{{Xf4m}0ihMHchoF{(8sgKrnq zs|}c)C>V~n^9<$%QMs`b%%@%*yh;L^e{kZp?qjTK`SC5N=ldP@HaD2AC`6kGnK^Xz=y^rxBn9Hq$@k;!*W%PjVm|Z%`e_ zMFZujXFL-t<~INaKe?93!L+Xa@O?!7`{Gqzygd21(}0!eiUlpGTN;a_1{eE=C9~!T zHgPdMXU9*7mT@@#{KD03ezW(T{Ac<=^#F)~_ShehopsUM?v`JOtMaH?d7T<6 zuQ5TdOT?@gSis+_mrAXC6aK(Kvts()U8wFGQCWKP3?Xu~m&o3cUzSmyOg~pHC>lrm z8QaFKEcKkh!Wry~aZaD?u&S&B<1e(wP0RlC{{Tt2mseS-|Jncu0Rsa8KM)q0M4=rD zrCU|ISUpagD8KCb0)HfRI^KlcC*iq`nz97|AR8YOuaTMK6 z9euS0D#02w_Et)Z^L#%69Mi?@F&NzFN9}tq3tiRugT!jv@=q$i5GDwQ5jLr-%EPL_ z;Q0K%xP-{2E-Oo7)0u=vpdYa@6P;Xne+@LmzDXqzv@(Nbor`G+9WGu2E>F>QoG;ASQp93Q{-Svdlh@nr`{h|Ml3C!w|y z(y-<>T5rHjpOgZXBZ8}HztRCRbamyF5T-P{&<<7j8}M$GFShV1%+` zQW<7jz?U7Om+*p??h&g1XmYv(ETq~g17@8T4-qk7U>vH8X`5ZKtuTWkVHnt3-E{u| zk-bk~tMai7P1C)#{vv6-1hcapo{m@GjN1XV_CkjS2M~ZLRbJ#>_?F8^XMAe8=5kz? zI(J*r`sR5@4=Y>qGZvL8S6UzTFlqy2&y!4|Ombv*XFbcO$tag#4H(?VkffBM#X^%^ ztNfLfv{Ptm-!kAHd^a4pq$@TO;A%3C>|kgwN2d6f6J{z;_xtW%SoND;oqnc|j8SmP zn0Xy9401Gz1LSM|!18bQ@c6w4h8S(uRrU0jm={_TM;tQ>z3U`vC=PoZcU7Mgu6%c8uBG1E#A>>xRkVBbbVf;5o%>FF!=j~w1@d(FF_~mv zJ|%QG=zbWmR(GGYXF}o)#^wJ25DKog$Wle6#J{$hyp6;=!8%{L3`Y zb;F)c;Tk@@!Vb}3#v&EFW!0pja(_%aML;Whh*b=?+bf$Xc(u4lZWY6xFP18W*afXw zy#buD8=aQj9AT~9X?QO&>Hw|9jhJ9{rn+mofOB!1i*5;{6~`nkJVOmL$if>I+BHh4Bs%5cEITDD%hn z>T}tiH|paHxuP8W^Wm0Zq!<*{WaGH(hn4>T5Z&mk+{D8-a4|7~B04i zSH}{oeNB8V*}U@Sf^kP5iog7OnPK>t5wLh;);neqPz7}>nP|}nRxR7?b@2|tve0m7 z_bCmHZ@9xu1In#-xVO~7(%1D~I*ml;&>u3mV#01*6(|A{DFqDoe^=sM%fpmFp~@iY z?ZGOOAWYG@7kU@s0*yuZD)GT}$>y;PEDWo4d8OB&J|Y&wLN-yFwb6ZC9xcuBdLIBE zFb;h)3-4_sNPs+#=Au@QK%itVnmCGrSu6@Amw}Em8l$2e8XwV{<~bHuI3~GqS6A!% z#LFA`1hBO4f>ft~>>^&EJs}EI`KXW`Vq%k-j1@;Uc1yx6saPj8q}3)Y@e>SRV*96G zh@r9{2KF)#ZfA*D z)2t`PRbJs&d{{8g%Jg?E6_q6~Gn4LSvi|_jxM-;|lU0?m7<>Ce8V&IhwKXm00Y#9~ za!UvPUSiy}16eCE4Qv|ag@N2JWpmevF5B+!FK<&vX7KC}wZ*9_R?&(*AE+yJtULbz zkzx&7hz)E-D^s%>1Gu18C@Il*PBR23hq!W9Sguc)RfY7SMVE}Pzi}qFe^-60$xxpO zmsCCC+d0Em;#px~a5YP`;;T0n>k1g0A< z{6@~>umRMp+B7w7J(Wz0gA4qZti&wwbkm2!GWKB6vmC;L5~|fl6@Sz-qfeM9lFJ@_ z`tD;T^siF7@x5ccbsQqr=&FXraKU@T4w_tl6d<}B*d(WzR&i36s+&-nMK5f(Gk@M05QcaCZYszusW~m<=eMM;oM$Mkq8S{Kz!~dK=As&{i0Y?cN}DzyZ|_)67)`{{U+ZQ*2E)FVIvt96qYEA80esoxuYF_-n^E2odBg95XaaVV!)$afn zR+{G5^)D8^A0NtCTWkgW!rMO3+yIXzHD=Ged}EYg_{Yw1x2Q;pkpU?QUdFYUR>KVLAh z*RE7{d7WgSDZmzeOEGUSxi1#H%uOY$%U+kVR+U~Zaf)Ax?x795ry!#GwU1EFxQ?Tk zMFarLXjG*FA_aqG8ckHLdRUyVSC1*9wU`}7ujTV^d3a@_OB5IV_0hQJga9aV8BGI) z#8-P{63rmE_<+xhKBg(Jf?XvCa>1OZkFMjCKP0bB_vP~2)@1{_!0Mi6D~~Q>r2y>x zN;&|gmG!7LqTy&=UVo^GRR;Jj`>2>Rx>Xm7inYPor|-Do&eR`yXP5$jdjYS+N60{% z8o+gWV)IoG8y@OiIS%4dQU>@;LI8e`aH=f9)2caNH>IOj0D3a`7Hls8u4+AJRbJ0S z(Vp47t!;-3S~vsm00$dczCXpw2x|#jRWnYOq2<>6{anY}oWyk&SQfqa0vk|<%3U0p zarTt$tBSPppG@j3{c8AJT^{elU@#nQkC^Pa!#`i#zov8b@ex&Yx=EPOEV;vvQk+1F z)(pf5FAywX_}AJcsZ4GI4zfK=A1Xy*RpA$iZAKxBS$Hjl{Y4eY=fg3IMF67|?z=1I z39tazA7cA<_Yf(Bn%+60{X}Mu%(jaQ9z^5(`GGdrzb_RGUON8f6+?WB8I!PPzP|E| z3emOKe9hnZ4n25>CM)*}d_+tI^Zm+Xa_{v71!C{HOj5A!@9xAAJ^|G*BNfUOa>my% zM%E}aSm$N%Ig0%0G*7&CoX+;*SMzEn5M(cimKN+C_hRf)>723*DMN=i&2FN55yefJ zYocS=zGWRp)Wpn1&Qj_bcdv)>ab>je{=<l{&VWPdkbI zsmG~qZXsuf4`D3D?F9_!*BClH+U-~gtBY8mXS}5#gYH&)ApG==uDGensAigo92Y-f zxbF$(QZ`;GzLAN@=wp9OzYrJ|E}}2WFQ9-E4T6rxr@)aC7L^fnMTSCG7EF29_S~o{ zG*;FM(R5YJ@HYLm71HgoL#fzszIAo>ibd*Wjy2!JGcqpqOsm~>-%}N_W1|3;#IKy7 z;Cx;pv3V$8km9N0Uu#*y&KHH@UM}$sJYx#KwBWZZbVKg*%}#~)X1qq#6>i+E#xH9I zC9zpiW$Chbaky7fnS`W>A}1nwoFqI~LZ5Q+;Nm3K04;Bby_e<))u3O!@-=2^5iv=1 zr*97GW1Tp^)6@38CdpR4)>ZE*UG)gU^1w^N>oLmD>A&6}J!j+V{FNJ*ZojMe#MZoL zUU+?bmnXaBf0~B@OdXKG*%mf5{{YV7l>(J*d{-Y6A5+XjT=<7@a;NOW`bT-@!o6B( zv!YXwV}M(E%fRi_ugJGv0O-MOO$TfY=sb4FGDkh5qg-H4_wjBxdYjN}wW0ByWHS3PEIMpc2}qm9RHGPLeM zGS}S98XTZ&R@50<+b+#42Yzgh`9q%n0PTp+Wg#67DAIaECHux@ z6O>vS2(7Ahq3;sR^xyWt+Oom4>RVe@dGq2fwPLO=^Y(#4h@B;V-}4i*)I19XYfM{p zdr6BT5LXm7y-R9mFZ0w=w=iSrv%C!ka#iWL(V4+$^lR{&?XU?l{;?G&ap&+sLV->L zY#wP*3#os7cmud_o2wiOZvDo&6;06=oQp3U#=7DQ(8La_J^ui*(oKgWE5xw3MJVo- zqGO0a@*T-^!OdT|g-{~#2ZMK2C~3$Tf?cc-TNnbD(Vyx!lRFr8+PLbbPnkMpecWKF zQ1C%Ud!s&K*}qUOwP82RzDc12D7dLF9Lib2nU0vrieT+1E<8(7Ydb58`Qr!O(FX53 z7K9z>1=X%rQfp>_M#18LYy}G6$!*aR&k7{GvbRrw)W%(ZO==NkWPfhTaoo4o~Ug19)Xs z+7RZF-(&&j6CSqW%-#5aT(YILL4RW&nY@t6c)A_+(}|0v9w6`Z0?N4fj4V=De2+EU?U*oJe5O)Sj+u=U z9UJ^hYxhHuRW&>C%c;WtQ3*(K`upyc?J!XPxlClN?zFPJ{ff?%TEF0;Na24EX9 zBdSgA;OzU`7V$`VRz0VFc!8}_&kz9(hQ)j#EVktLgZ{=25gxR~3@n%A#7B126cOxC zxp-s2bP3=;@=^i|fZ6X4i9o2>3SX95mt#YW*uLir$*N5>1`sOLXKfgp#3*f=j0vgHtKuUs? z-=o}1xwi8CW>w!}zGk5-q~Y@fP%6jo5zRXp|HDCBm0H1 z7Qn~!Q^yyMrvm=~v-09F!8HN_ODLJD=CLzfmFBL?f9xv7t40@^dg|qnD`XEyabDi% zdv)YB^PY9o^RRrbS)Ho*_n?#(RcD|0eqnUT2Q7toaon;Tp)WkR{)|3_!5R5|TnHgR zAimI+hx6dGr`kRMpihJi6k0aPnw2t#F0bZdiKA^@OBHJH>RLxx-+GPU7y5VZU8!l; z7~(3I>Hh#_PHQ(BwB`Q*q(Qg!Us!=esPxY-MckvGkLiEhRK_fTk8OzW?8i@K3}UrK zghx%oOg3BQ?_4E`d_VF}rKObdvchD zMwT?a+@Z7|kjh3^fO72^uPhR!E|z(_E&Gb`4xMY7Px~Dk0$s~gFEYB3Xvf8wFw1tE ziY&Apy-uJtzpzGLQmvZ(!#dBzW>O~wM7X2V^>UomQBaoW9sPGKYSn#0*h+ej(NBia cn%19AeZmL?RE4J*1@}HnapSz|wB20)*@r7sP5=M^ literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/flower_primrose.jpg b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/flower_primrose.jpg new file mode 100755 index 0000000000000000000000000000000000000000..b592e2da85fac7c9e3e0360e9af99ad3a2a1e044 GIT binary patch literal 50558 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 literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/flower_red_poinsettia.jpg b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/flower_red_poinsettia.jpg new file mode 100755 index 0000000000000000000000000000000000000000..57f8e9a3d20d79c5f9888ef610453ca27f971eeb GIT binary patch literal 71478 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

8x29{gkw zC=`k1HopV!1VNr^2X)qywBBom(Zl-A2?X}!TZw4MvxuoIO&&E(LUJ`a5w=5OA9WJlCz@@pRJCl8bqG#g%G^n>gB1iJtm z*mj~LPY&t80t8V=kee04cWTljQ$U3%39&R3Zp+vP{8CEYDgf;?oT>Qx;KwjU>q+O$ z^N68?(nImn_TDS?kXW3k*ecD@oHSOLV58_@m z%*2ZRzaMw&T%`nQn$y7VonNu%9WgT0x!M}`_v}8U#dcw7gy1bt+MZr<6DF6uvjrYBMjc1;AH!{BgP$UI80Kgh3s3!CZ zC5LJ|60}2{$*~BaBgBwNFsqrhnv=t+DG+RqLtTbK>1aY4)6;Gmf@q`%1GO$uM+V!K zqM#*xd+K?4`{bA&NjGx16X$$ySfE8XvpSWbpb#x{dSlVHq21u2eg+2+7Xz)>ym`L$ z)*BWf01jQibXATyq#p^pTO0+Huow?xBGuqapd=oXt`A^VP}YROIaI?d5!A z^Js#D`0{!BarWayVH9HQUJ!4bdASh$yd~j9>&^kg0CXS9@~+oz@|5kH5Z1nqFX#Kt z^X1>m$2z=DvanY~rvryPIw{%0Lm&XQof4qx-2|idBrOAm-EbG)_~BvDU1DMcYc*DA zovu>=Aub`%HFhVHSc_=|1+>sYmrJ5MmTeux_Llrq+IQ2tosma1)q5oKyqlNNZiFkO zKFeNMJ;!|!qy*c&hXPj`yt@;2xsTby#*(5dg%@v?UWh{s>;PN}d6pXk=5vm~?Rh*n zYpNTqV!zCdsG@ZgA|d6i^EB^Ji8sSuEea`#4jN7XaPM2bRn5r>3U+dQylByeMMJF( z8mAkJt~qdPG%5IeJL|HX%y?l`nm=jBXM9W)c30O#uFf2EO$(+0SHO3ZmU$Y!0gIGo zI{eTx_T=vl$lz4Fj5zq~++_H3r|C2MZL zAQT!M|>-nQfQ2};>uBbC>njl$c4kzD^p}>3!LWm52#+NLrKp^%B2ls+Ah-YEAd>k@s zao!=JRd5AUz5Rg^r$UCcepm-aaT1Xc*=n(Zs zWK5IgsGDk&wv+~|#xVr-E78^43Xm>rrD!c9sqw|&zPV*!BVe9Equ>R*rrc>W3W9h> z)F-5PnjD<22{hv!n_I9WeAmUD9=vT$wB-*pHWoDdnbf~Uw3ADz@Vv05CIetv zJ1Dx;d6N=|+M#&(HGPs(ddHYtv{XVol;}3iVzluR8Nz`bB7`s=odk4ETvT8N4Af|} zdm066F1X2n!VNXt1#{UmyiSIT*j6LeW9Pg%7!A^Vns#g!Jh+;LF;0MQgMAxVR|fG- zG!KCl=!Ng0UHX&*(g`WkDf5m$yw-aD^I@vzAuB%(JQ4AR+)}~YBkZWRy^QS0Dd;33 zY_1;$uTypEN~=gt1+-Ig@ri9nq!&dV25(?{IFeKliV3530h>7)9GFU=G*f#7akaOt zVOpX-PfMhKS?-jY9yK47=9~3~s0PG*&2tU~AGWYSUeHy12g=`C?8xi0&-yvPmvac# zDXwC^yDql#!H`N$cuC)b`^PvEMlg9>%;T0D;|)}YKd*F^sl0|diWEalAOr;(1cQME zm7GM-k081W0B>_iJMY_g^WO{a+~XE&7tkDDPCM7@8&ZlZ$p%xmQHE(QrhKqA`9O`3 z3>ddAz zS7^Ix`|k6a_cbY8-jX&ZuUNOKBs4udmxL>>m}O&hu1eTD9YlJ{BGefIv3yY1-K^0E z%x|>phg@ci3WpR@A99SBbHHWIph@DQ2bWJmV`haHW^F67Mx`rpIDvTj6TqQWlEZn! z{MB~t-^&%zCsz$lb7~84cByaUQ!O0(%+)<_L_1LLJv9MrNG}i|{oLk-rujQ~=kPkZ z%EqffG-`vSa={Q(`4x$(5)U$DZ$wN`=y z&a`pjc*;WlkKZ_^;Z>`Z+Fs!67!3`t>ES*5f7cNWy0;fulc|bYCUVN=~P~(m#4)KOy0wvbQ zPasiuqfQ9i>KYFkkS%Zg`O}oWC+A-q=LZY6IoLov>TvV;k_kY7JFqlxG~Bs)$W^C2 zD0IYlvwO!xr3m*r`|eM^SF+TalF)}tr?@s+oEVQTcta1@Ok*(&QJ#jli1r|-nGrhe(0zH1hfUb@w@=4s^muMiPfA( zm0fwxTMalgn)Ua+;9DxA)YR=!zC)RbGPo|c*x)wNG?3#QWI#Jh=h}0ve;hENBf^4~ zjlrG{b8~A@h^@P;LJ*r!qXKF{b5(YAN%qzz1;95hv>SNSmdpv+)Gqa3!y)_Q3=%F# z8Z?%oapA|z!Bhd`9Xs}Ot;OxI1e!$WuukG*mCi2h2#)zS({op=EitVe8mZ=P3&6=S z&s;iyg%gG>_8W`Nud>uQm`EL?dbVjP_eAw&Cme5#Uv8}!IEo%T?}K}A-R(%Jl0p#Z zuH(l6=^}dungEn&^IfJeQ!_=R$5HPDE*6XufKt5x*#dzA7%PZ(6yCYyVi(VPz;1rS^3Mr`9_Hu~DA$hjg2EfwyqhQsDYkN`=;?03HI z7NCaGk>S(dK67_QDBW*GDZK0z$}|NKKn?E~8@{=K2p~o&{ih1}yS!V!w`bzm<#s%QN`}y7;nNj)Q z2j`;#snvLpJ=pRe2R_1&FAv(EK6Q}T=o>11;{O1{0!GzOC-J|Yj7&m+BCe1g#HqI! zCnV5{hQd*_8%oovhLj--pwT$q)^jn(ZN5k3P5p6-SHf9dgbkac#W}*kD5+WSv+qhe z-vjsDP zUl_1asZOl#R4h0BW`RJgoMZ%gBb%2UmO; z)r6!5Jxw2X?SutAv@gUHd*$(pD;n@#MURuV!W96I37s2?O-{4NQ;xG?!=VDKr(n?J zg@lna*G^Ppu;C*k%+^ta2&~&Hpjq;r@;)0chXf#Z2G+ks(aiV83G$9>d=;9Phn$3QWI`VT zrTg7mtgKEzDqjTFfT|kfEN{eGEmRbd>LkPu*tS#{fh(w~l)PQxTJQ?gHqQmL8Nejd z8YJp#jqeIEGK!}nkh`(!I4R+Z0lm(2%d^*cw0(}v6ew**@H|w-MPwO7Ap5t`C3r3J@dL zudjJWSCJ}OI;sHor#7$weE>RF-O^6-czYaOZ(Mo5xr!I53!&Pb>Xv}>jbPFWN{4|} zP4g!B-UcKO_zvqh&~IG|3WeDS_>AGb(aKZ`j3DH8r_0YgVut3z9CR(z){nQqaYQK) zh`?y^;KG>0vbvZXTH79<8gych3G_P`P0~Cr{W%$q$+^j;be?G)G)#HMdq>d&^O7MV zgiDRGm7}VwDBHJstef`H4?b8zO6<=R|Gsj4q1R|JLZ3>}T zgNCyyV0XqE~Ica_E55@|7u9fSBU!YFa2tNm@^QYXdl)w$34! zk*^5_SctIX1hBVyk9-(2+Nun85jHy>!{-;ncEMUP3d`2ES9n!) zgr#ZDn(~i#HR;PhN=6NbFq^fTZ9M_!>hNfjK%lk4j8G8l`H(74)$XQ9!`nZF9`TnO;-W|rEnGG zt!OUET3M7pGt3p<{(SkuBM^vc-)}hZ02V=DaN3`itisi#8VloShZHbS@s@^wg0@g= zdlQW@RtO-0^8@?|{9D1yr6)+wpTyr+Ec@ZdJh1ZhKY7sgbL-;$xxTT)+Vgz9`0M<^ zdnd)w->K~5p0kMU!&jkN_Js3|K@dI9LD9jpOU=~cq&2PYlg+2=c3ja%cYuO|&`wCr zP=+)qxYgL$;4PX#s`LO10Vad&IC1y7&TOzaz!0dyQ&N+|6JQZTq6`>r!X4hR@vwp5 z)sDCt-qRpztDkP4iRZ^2R0e6$(dBxa`QE(7Ugg<0WjRNgetDENiUVOnF49&{4_FDQ zJ@Y>Re>u#e3992kzesLH#IN-zpL28bi;$p1*`<^XSlKI(B(6xZDaG?Yj5sThAO0Sf z@q$jnDjG(FYz;kt@tPP>DNyMiMe2!!D%OE`j|rk0D06`C6G8F=x+dN?tf?dj?^m(? zem!Bz;5&8D6YH-Q`fH7TgtrLBrv~m%w7eWmkXzm_!C|5e4}Gy z3F3ZdSFzlpV6&^ff1ZDfj2cO`^n2@BMe-6pX!JOy-OK>U63{)Ge(pO}qXGa4qo$DwiVVW0#}{2TpP9o90tQXwHh`Q*mFeMG$**9-PGg5 zT+={ADzKWo>zgoZ!RQEs zz(`d{gQ39$39|KfIv?Bck#~J18e@Ihcw2 zBD$Bfo8f08k)SU{>oR3kd@T}C@iynYUUwatWT@vuI=FmPwJK0Hr}zbl4YW}Y@qU(NM}`R$&B z*`VpVm&PP_Fhu2Sb}N%>&3VS+V0Jn+)cbc|IXqfd#n|yd(2rXneh^}M?fMT^93m)^ zAfsJ3tQIi6zxR~l2c+?B&!B(2mPo$ZO#Gwkit8Oh#h|BWmvl+RNtRjUJ)Qtx!VWbS z;8L316q1Rh>k0)>sv0)kSC_$~C3Ovljx;yz`I%=npz{W%4#XZ4dvJ+-eGVMfcdfn| za4Ar3^NZlSKg)(B%g_59eY1Gz*u&lL@h&c;NoX6s9G^b-h-#VycRCzuYI?xKq5)C_ zke1&18pQ|Jj*oUU*PrJ(#Jz`eoAbAB@-VnLQ(rOFpKm#2MQ+F*;6A~|l?;!x`a1@TU2i=H1PH@e&_;oAdF%IsMRyEb%#eZt~Cn+5iXv0|Nm+5Vl3ODV0zK zUEc7Z&;p)J$f#xQGxH!NXa!4Mdop{`n^$&80qh0nwE7i1^B2t_FGp zeT*M~fI9Fv%P005#I>Pv=jKVbd?U`>a_sla$fZUhw;~Ac?C&B8N3Gkt0To=JDG&-mu|g zqEqev0E|EePH=yb?)1}5cr|9Q$^wY-bEOU5m;zJ4Ic}4GpDt@irD}C8XYq=r3J9#c zHRJDag);zK$RS6O;lb*4r90ZsJ=u>IViaUihQfgSV9G zV>@=zC$^^@_ct+sO&e?osMzb?ZbybJp%tDK?l5AhoAb~1WoJNg+kG?n$-B9ie0KbL zldG4-1w8BhVhM%lsH6jsg9*jTl&V{*s(Q73Ah=M5(`Zh_yNyo4fq+&31HcoE;D|ye zJRoM>S+`h$*$UOgRsmgvs0uO}T+?QR@z^C}qqen6vO11l6u5^9u|emD)hsG;U2D2}S^1zo;c6Vt{$uv3bW~ zT~(D0v)>XeYk}HZ%<xwJrujGg+X3xO%-p^2cYh&t(7BOwZacDEB>nR41e z$WOR`^CVW9F8o}qXCMGJqre8&6H$wr!lIn*G`1!dzXbw@w)fT!z%#%U$ z{s$*O@!|6E_{B&UB+$({mtNUuN9XJNz}1nINcM+%^N9k<(n>eHQW$e`nJgVuK>kPWe zLjyt@6usdrF!Aj5k7a8=R?VpAEs07nZ#jZFz~lOO;HAZwt|a2f+6k?@81S3ABHojEk0Z@tA?V7p5${=Im^ zI@`EMdqQ$r?*wlbS;5XZw;G%$YEMCAzr2lA5gc*f8oXt=>>6*%yPsn3Hc{~<``P)w zY(o_{k?60k=i2~{dsB7ZJ3^rza6D3=u}>Jz28_iN8V^Yi9&(>4INQMzl_={BNrKG| zM7%v^FF2l>7S0DGhXO|Hg4xelcw)~d;~<;c_kgIhP|yv##V(B~AQr(&gEz)%M6?d? zXRN#)iT>b%M`d55PViR{1yBtY_izf}!t;yaJ30daDAl29rsB9FTfvo}$v|&Ht?XHR zXF>XeUQf5-h*;oWX#RhX#z;c^@&f!!J#8Iee2*BR*Jci5a`0dQkcwrv01L6FtP+s* zqgZeg7IBfmMN^HEe(~Hq&lnbh9dIUZTla-kO;C&G5U|2Q(pQo}UA0qWRPiAp2QVrD zN+%}q#c_3%%NDeOwijX%fQvn9X>6nub!%=tZ~#tv29BP+SPS4W5bB}KVKR10)OxGhxv#6{xin9qwshG){h{{#qVGO14RH1G6BRgQP|4o=f!6b^$sylvCNURu$~aU zN0R^nN(4=aoQcLzj7#~(Z09(Pb!A6KhhX0BSvU+8r0UPgs;Y2T4W5o6Ayrgt4gl6! zvUt1k$2d|s4D4&PI@2X~Z%3i{V--No>mxN?PN)r#z#&H#nm0#^0~3~o`MRzIbY<%m~00A=;%;K=i8ST=YM_5VwRy) zf)P9V-W51h+yIdgpjdeiE^sYi5_2Rj;0}Wzt!xAkVsO1dsezodioJi{18yk{;DUP% zUJr*D@#;1luDloh%I?de27_Sqr#~ih^>hjVG=lUm7iQe75FFS@-jT7zdCT&arW-8+ zoM;m5#mTP7cIt-ryS>c&JR&yiB70ZfJ2r+|5yEJujWymX{{R7o4U15;fhYi|Rp*X1&~Ph0f_54{ z{Cej%vxBFcm_Y3O;I67B`|;iyJca?VyIKLYfL&sAI>|YOS~IrnNaw|e-m>_z{<5vB zTYg#Mxee6iKEEHF?$o4W5eSme0oYih6lxkLHLsFI>YXc5G;irgqZN`hRwC6_tD3y# ztDz5HUu+q%4$FvZA%Wr3&tIv9c}Pi6EekkC^JY3i)Np%q?7F>R+7A$i>mDFJed=MK zYa0|elIWH+)4qwY6hbGlN1k3f#*=MlC7)sk)<>CyCa&TSz|52yKS#%>SUMvM!j9Sa z-_8*P)Cj3j=TGkz-2g_WF;Z;47>+L< z>wj?oWT{x&hM&?0tcrWTTleERcphC(SNyN6a3&1BSN8h&$MB!#fIi4X2Diq+BxB&x z1sgq&pyl|=i9=E5uK{HVwk5Mh>a9+A?S{xAOe|PcP>V(0@Y~5m!8R`#ZYzfDM`h#dtz>``)+p5% z!il|5L;y*XWic4WN6r+_ib_g~6bT+{jkv9JKG`d&c$pmG==IMIKJyT?oDYce^WHj! z$3bZulvYzp6H#R;Sgy<#OVP6r2dE0d@)0p?42%tP`!Ep#{;b z2ubCZjfs7dcN>S8L@N+l7Sxd-r?50fL`Q=!30pMt_N>_sx_6i(Vg zkuHzak@y~mE}NMK0Lsp0hVpW8u1=ihNF=R`RooE;q$T0N14LSp(g}eC67a?D(I&)D z@-aJf%YiC8tKm(%3%4lbwza+kNEQSD<0Kh_0ptQAbeOSo1;S*aD!m90>tAt{-?|m7 zDmKk(!&MPq@z$^nA=S6*@r92CQ9}tO*^b3TAjBL*)v8T|Eb-~i?p3xWjvO zF2S9x6GT#h2qXZ92T!%^@Os~j)#G@ON{4<9{{TO{mxlD)NYdDflo>(6&h5a|C9P8M zGNXYUlwQ7h!rxR!gz@u>83cP5`PBN*52NE z!zeOQ*45+Tc(l#(9&EiY8K}4v?1c|M_QRh&s=(6 zbB!OIi3qfxmE`_CXVKRQ`_wpn@_j<-#E+7>IU;oAI-(Cgl#%RuB~+apyNT zJLFs-c+e2Dcw%VVpn=NzHN4OUu!c~Ii1LC)?RdvZ468tVv;JX~YUmoj0bJ<(Eq+Sb zzpzYAGCFE-A?Yi-@M4hJj-O>HeZ5={W;vse&K<%_hOrzG)#V6{VE&)-apsFWZJ8X}vS_t-E9CerW z8cnqLdH6AiH5JhDxIQ%=lOaQ(9X0RmU%qWQWOM=)@&U0^mnWU)Ht0z-wYSg!bGAg) z$Cw{zcRT(u5WHm0#RwSi=WZ$~z7c;N8s9DKm)97JZr9ec>}0O#pPfJ6Dux#O_?X-v z`Gb$J=iSZ-uM=*$(O>H|9tBMxG|i}^2?50OdWk|59vUGuc#Jmrs9<{sxrl-rK?X+l z{{X{aOglkBYKR^>*Ck@uC+_`!cs`0^B?ul|TQ)_(9n&L3vVwtSMWZ)@^gO=(9sdB_ zqHjsxqu0}Luz^T@u_WC28N6;FSNjk&(jK_W=F3cZUJ%9>uy}NC{F4Y&+h6l}rDBNf zus(OA&MqNOVDI6fx8ik=G=u;YmcTd)V2g=%NTbuBVWCy1SUyy;XE|auWKNj7R!AI) z@TQ}#UQ`5A>*>$-ZNc|)pN+!O>0U27V$M1G`Z7kkZ{O*~4*7B!Okiy!U2oTUXpIyG z%0znvMj|`SYb-s+fkS@61iCyZq~A52ErcfmSB+1vxAlU%!vfp}Jg1YHyw+H1_fNn? z(v%}{ea4Azn-bPSptN8ry1|G)usaBhL`#*YxlN|K-f(>uDpxbGbH^AkQ;ysl z5*!l&P$@xN0BC4P(uc9xF*GP-@K`iGB^a3#c?V!V2E_#%!-qCMquTiM%hz)Zoh)xm zuoeZb{{W2KK(_XYTL=n37ap&ghF*moaxaMrHv-j-vL% z2741{AR*buv%WLjJqhuikINRM2%oO&m-*HS^u;!Kz{(=^CZC3VzB9Lxp+Fe(EAjT{ z3S%A-5?7E* z9G5o0R1r`i0RT~@HnU^v{$Wj(*ah0~Lq@gCxGZ&$29+4oX3MSRF(cY(OOyoB^Vx!V zc&sDN-X0L+PZ%KA1JbyD`B5|#77V}%L`JHUV4fau-thw(@S&DcO%no>(27-n=Kla$ zY&k3mpjNJq;Zo)0Xe(tc$%DPPn}rj8_1}{O*jrvdC-;Lhi@~o1;P=WuY*M8IvFJZL zJ>U#av$z4iS=%`p%jNVsy^kC?`y0a*1?DcidgRvdyf%J*-x){RAI9-Dv~SR8(td8Svz9#u=5CFN+W6jn z#3}Zl#J`apUFg#G&b+)_2 z5aa9V!+1!g#Rd4hDJJaW=^{ zQ4$y@desMY8M`jl;`_onTn>)f*bIpyDk_4bYK2lPX5)A$QTY$!{f05TyYRta(G40$ zctE^!&cQ7K9Sds<5KF`596)vx1r)2KW!OYrM41M`;m^JQ0PYo=TQ+}sF?uVLPvU=> zU{HiTm0lgd+}m9^0aOT#M0AP5dC$li_BZlw^LLCYL>3`55CEZPKper=kUmMSqtg6i zj_NIHp*9^JgRFF6XrH0_`(Q_1h)c;J2+c2%QivR{U!QofwmW6xL?_#?JH`Yt#oW|l zlphvafpLg4fYp8Q2bzQJ#ZFgJtF162ouWN)mBMbMK<+;*tr1oLj$9-Gp-@gyb-p}J zT!5r#3I>Ts3!0{jXpjv>w{cLO{Y*L~r_Arh#@#XmC1L?=u}U~9p8HA2v|O8-nR9UKJ%F14x7c>Dmc;zo$K>IUyP-k98n;6 zclS1L&+~*1yy)nhpHvOnfRlK}iltX`&EIzl3FIP*j``h@H$f&@ItW|IR zH$$oD>nU=;iB_up&cOO~p*eyyo0N)*wGmiUs=Y+uF3Wg!LEK{qHW@9C>h3opH;|2z*dGVS7Tyg(DF$x&>mM#oshMh%lbpJ(kI^H#za+OHds6y3GpHhTG2bx zZ(Hf_6t;ya*+2s{ojj{ob0brzK3vWV5k)Q=s9pG-X89m$qDi~HV6WKk5bGol07HGi z+uL68ZprJi{CmpQlWui7;P=5r`+mO0^4k3O)AQ^2%PlW>1feqYJ^ZI0zHo(s1lqM# zlVI_UwkoK>>Q0$XG>eVTt%GCif6VY7Kl_SN$gt(hSJ741IRlq@9Y`VRSnN760I)PF zZ8p9=y%=Do;NaKxba)I79N;1xYu!jt0^J_**_*bCpqCjqN|d@*mfy{$Pe_Ty_5d zzivJgDckaM)9B|E!jkrSzq}D#&0nvlH=fJ=0nzXA zH9N;;z5RELSryHqZ9tSn8&eYjQd|fOcmP$aS8I|)?b`)X@DV*b#ya{vFXtO_D2znd zgo(++;}(!bpo8)v7v0rH@1+DaghBlQh)XLeRO17n<%X+?g4o2TTc~(f>Nka1;>~|nCBzO;oqO< zipZNUjo3LrHC-O(1N+6`UdK=U$^M6bUyKAx<=co0#P847SZq#_<6Xbk^PL0I8u+I_ zyrnB{5n5h|jKsQEXf#JJO?J4&F-LTssGe(=LY`?*+$n8z(^FR+EtS^6kB3Ro?A$9C z$o~Kn=*4(B16A~N+zL{7xACmwoxH&}mPG>D@yCQ9;pXK&GWH)2C*%0WN}`gDbFUt|>B3WGZDZW)9GUQO)DC{X?st;w#Pf@$EwhmS0Doq1k6G8_ zDc%C_tXAvN3&d>u`SYH9?wYzl>~bv!U}l_rxRE}`?SX{hzzV4Va=aT{+s+xcx@xJ| zcFWXW9lsL=_#Uk1O!e)GB(|lz{Nt!i_X(EBIU3SyTy2`pYzu#a4H{I{+qV%-Esotk zf7|ck3-|;ovsz_4Tdd5eanoJ3Qhk*IzCMRrdPUec+va z-x~S%g50G7AR;s)q;_$T(TMBOgUOiN*Mq1Jql{Xg$1nI9#~kZd?Ee56DKb9AS6ny- zeY?a(`zQDMd}BefBf$|#G8Ur`-chE4$Y?D&I%!v{4*c_!(q8L6*DZ*rZ&2{>{$Pw= zpTU2;m<`|`-U{x};S-(Dc)INIhkEqEReYcY_Xn_p-tp~|%8$qPL;gGPeb0zL%)qG6 zVeixZ;dV9A#p9Lv=bt$pUWG_{-h;>DWD1qmu=;)R>(l;PznuH7Ih$=|?tSzB*-Yy* AE&u=k literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/flower_red_rose.jpg b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/flower_red_rose.jpg new file mode 100755 index 0000000000000000000000000000000000000000..d88781a5f34151cf50955f5b746aca579297eac1 GIT binary patch literal 66168 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 literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/flower_tulips.jpg b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/flower_tulips.jpg new file mode 100755 index 0000000000000000000000000000000000000000..b9dbf24e8e1f812c0e63355c54bc6502c3a0de21 GIT binary patch literal 50805 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 a{{RT@x9d6a2f}ap+B5$E4*viYKmXb3gSIsQ literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/flower_tulips_48.jpg b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/flower_tulips_48.jpg new file mode 100755 index 0000000000000000000000000000000000000000..f5c2fa97c968e0b290644f7569d650c3c4a3cdc0 GIT binary patch literal 4319 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 Ang9R* literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/go.gif b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/go.gif new file mode 100755 index 0000000000000000000000000000000000000000..8d2d079a12b9aff6bff9200cf357e6e5e419ce05 GIT binary patch literal 172 zcmZ?wbhEHb6krfw*v!CihJoS#|Nr;n<1Z;FoMmNw(cS&!*s<@|uV0jqV88|xf3kpu zbwDJ@3=2{JMZGX6ipFc;_@CT2#U^WlJ%or#T;g%L#zBq_iEw3vk%u8x6~ zjS0vVa9}hLV;5v#1ZrVpV}i-EFfuW-vIz?+3W4~_rzmwQ8x#k86!#PfU&3h=$s%|G zq>&$}m;-1ABP$bMMdF+2q(aWQEsa^uMp;j99e(W=>t!AM^RuY(>kdEJt3f^{92=J& zdugq+bmxN!A^R7G2ppM^Y_>OZ{hjMUek`jWgUwlu*B0Q&@AcO zNog7DZ8<$vzb9<+SXjGFY11`N_6kpd z*BNURPrQG+WtF<<-u7+Xd|gL1XGOm|cItIrNXXTUiEfJyJ*nATEiu*RfO(@vq^)eD zW?`ytf=Y2`U+UFup>bX6+bjYFYFgzS5tZd%CM-6k2>`72hw|DpL~$-=Lx&n%s8ZpxZ!EVjSI zGKydD)7feM%u>acVLa-wnq_V8 z;bR+?i+??`zaNrPnHlXB71$1P=C0F>2>7Uxa^R@y+x!wcgO)ea$>yv#o_&dLxb!B+ zq($iHwW%7@q*nfMw4Um?VLn5PsSa0I*{`yn8%h=}*7~9{68oSg_3tb1ZJYI1ACk&J?)VN( z<#0A4+X(>k7L%jG1W+Echr3)LGPg3<^rZ44hmBJ4tOjORREAq}GzThg-OYOR=D69%f-0CPj)~^-v4dP=O<(As%8O8p2js0|seWLW>%U!3G*E zhNT2mPMEv8OX*`RnVFlqNy&u;MKxD-71TqDUKevw7v$jwG?~T@^g{xLum%j$u%s0p zECw5Bu%w);GC84UQbwYWwPdQMg0IMh1w|7z!AG3N0C>@k(Wu2r{D3CY*a0U5qY&1B zL7GWu!GpzM11)u;>ZVLi2p7Xh^s$yqr5;E5+U{M&cEYl`U8Q=P(dBycu11?3b%ds{ zkQ(W_N#jw#4Vve`l`s!YtQxF;`tj@Mm+#*WUO0WEH+kan`R=ve)XkaR{PipM<{my? zeERZv|KnhFur_|_+>5tMuir1PtgUW*-Q4=S#R~@E|Kh-(p^nIg9IEm96Eb{UI>SRJ zXCIwfSbw)~=aU;B#%_(SO!Rk6?YTRdA57nQwm5!! Nv~zWN?(lv&_7A_ciO>K5 literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/pbw.jpg b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/pbw.jpg new file mode 100755 index 0000000000000000000000000000000000000000..7de65b3a9c791f8dd90cb5c7bc483321d401a89c GIT binary patch literal 4387 zcma)9cT^K=)87OL5d;!Y(13JMij>f~^xg%eiGcJLdX+06Akrc9qSB=W>AgwsO;G6_ zMCl-)6a#P6>wCZR{q@eCJWd#5P1^`Rk1zc_ea5+y4 zln(#`@PVI7;BpsWm9}&?w*oBNa2gOEa2+2HLPP=p_{0D}ECT?fw*dgoa5)PE1EBw1 z!2b%~f8`%{FbIUR;_m+%{@2ZA2LOixJU|T|2o8YZAUrtevI{uC(ZPX%KsW;b2qBaJ zf`@+vOoUV7EPvELR}dHvp8x^_00?deAt3n2_Df3$0^pk0p!5v9Iweo^d~+J9?XCT<0aRWHmew8q+sHa+SiK9Mrxb8;a_8>_?avS1cCgaf+NYmE3K(z z<{Fp{@A!jjdhLntyXI7iB!# ztt7T?H=3uqyvcLn82)B6!y_Z)W+$ft>xicL4DB=}E_NrW9Uv?{L|QTZCpK<r;I}t{lZ#3qT`^~>y&6n9D%Ist1u-fa4QdrefO~`$> zD^HMg*T(}bXVjSC;Di=gP`%%Wn&lcu&5iMtxu{Ozz?f9_B`;J_`h0zY3#7>lTKf-YVaV8iAdS1MZ&P+*B{S;W0Km)W0f03CWOia1Uum<|`l}4! zUuBqbp-UtZ+te-oAOV$fq#Z}XW^4KHvjSvK&LysC?n zMjIAJH1?E@iBP!dEZpn(D{x*w{RPF9LRuTO6JNV7hsxzMn>VSnM2 zp}E9mv97;`8XldWWuKMhJc1pwojL0bho;z6pC@3+>Lh=s{44a_{go5f-q2KC8gS|L z+27T{HM=DEBF5{RHS?8d`6fe=TDW6izt$Rk?fOyBnv0MY;<5fp7^cx_ z_|B%rlsk^5^sBf>G^SS_UQK%mtTsF)yY__#(!V8SS;RNzaV50^o>4sa!dsis59T>W zC6Ar6sO*7FwKw^mp_$hD`Ct%^h;ycKi6RPZ0XgGVQlzg_e8%0#qZ-`_-I0L_v&hYU* z)_g)~LE^^AumEA)dmOF%Ap%WK;Qe65$EtrD&4$U9Sdb8Sp zmoHVHRzp=ll|(nbxo-5>6`s|+ z{Yb6;m1R&bPrKzlQ)LQW&Mc__@52|Qke#;3x<_?r_puY`CT&soYfG&)A3`Bx>T6qe zGtG;r*9?s6FXN1`XRhdZ)#H!43fH~nCiPBVm4wGnL5GJOlT?x-h7z_OC{U&>SF3ur z3zrR-wYUt45oyRCeP|lkj%#qIH{f7nP_|DGdcRkF_3%ens~IYXOMlCOWAZqS>7<#x ziSW}<|7^ZK!Sd35(0+WO4jolx+z??m8K6}zvH{&P0+PFYH=(yo^ zp?LHpT5#v|r1GUZa`{Vn6}Nk_ zTQ5+~^SyOOW2yxyYT~&kkq)yt@BEM7M;sn+jvRPz_q*TC^`Z$I!=&39nKVXbah5wa zHs*ITkn4hs$?Po`cPySx$*vN6QzTe=-uC2bd+ic&bUibvpm_)c@>1!lsulx- ziCu5AtKD!DD;M#7NA%LLC`UDCi9_U_e1B2LP0vj9m5iJm%yvq_@E{sxEx5KiY0~yA z$wVdjBHagWU@a%y_4K783w}zdv55F!N>9*Rs&eFM+EKIKCP%$TzX);tELn}NsK>-A z&#}~fzM0N21)_M5kNonw#=>p4Ivu#n#9JPwbEXPglrL8ISm?9C^FmQv;K^>kUWA?c zdd7X{w9;<43&Z@`!7QfLXKYQgh_)bFOTcijc(}rWNSc3I`c;2b#cN}%BH|Rv52OF~ z>2Aw}7P{L=|Av2u1h>ol-&2C?l3_@!dhT=5`|exB#fOj&b25>=7v62`lpPV_S#L{Y zKJkBMn2~oby7HaQyz}_hP4wH>)}I9!k+^RFYomy8%!?GbD64W{omc0e78)C}mfh4| zPYsu_E&UQ%z#yl=6K0Y5X~br)w<@gOV%+UEZ-Cz-qY8=q0qr%xHjPSd_Z$)Iu92z9 zScdj4?^&ipiI;NJsLwS26^fdmbILap5loJ1fMP&YU2cdvV@z0%$xvMSdKxW*_AwV% z&4j`0CNH}5I|pxc+CzRN#=LBMIONP>-My9aTM`-;`$y4sT%VN%|16$Ll zkCOVh@b_>M7H5Sa=up2G=sB93yJC(ABD*s%>}iN{`1=e;ejL>wl~u+fi~k= z7hYkB7dbSYufYLh9-oXfZVCXRxz)E$;66{b;=y}@Nu%3!%XGIqB)hi8#Ab{H4K1lU zV+X;EE{rN(UvD>^%6GT?gxG_k4H74+`uD_|-)I&|wR+HI*xl!?kGdw*KU=#H z+!a{}scDD?<-J`&sKJkTt&4_adh$FJ#`B?gwY6Ut9yrO{`?2v0FXvcw1P_*GuLdjP zlT`!+Nq8@da)d24^z3;iV`7c_Rc;CuG6k(pVD#k@f}l~Z7^r7*#hu$XmWrP|D;&3# zW;R&Tu82rz@xv!~e;NDmo~ICD;(h-JaTGUIY0tQ#wClBQjo<`w$Vn7sjp!$?jKPRAHuX1Y!6CFBW?qa?(OhsF7DA;0+J`dI? zc&hHa$V^2}t)EZ#$^HGP@>@~MUkHG zC-O`^IwdLn_O{%X!7aJL=U1cL~t5leJuE zGfn_%mYwd6__a6a$?^3YhB%t7`9)wP6;>Q#EZXYh%e`=;z-)HwEACNt?fNpIO`1^UN%poFx$S+f!X0Ljx(`&5q<;xiDayBsg2EAGL9$s$ zObfJthP$`dJ5RUE(%c;iQc8Nv?Ii+9dT;j4w_MR&zII&B8wjIi;=`uzFO?0EwTW;P z3uek6e*aReR;e`)C_7L><#l+b<^rn)z25M)`*E%`O5tmM#>k)oJ!C54gGhK{c5QeI zX%RZUZrI~s1hY(jk>1uoSF+L3olh5^#fCWx#o}CMmE`XPzk=pJXj#f8PwbFeAImIj zzRw7e42;lbk+QXd>EtvFLA|^NQB%vtqUPtvuES3CZUnqH@j_>X|-}~Dn9*7Gr)I;(# z7J5}cFW&Shm(`T0tUJp0uP)nV0TT4&|LJMi_7`@A6zN(j;3B55Wdj?Xln6<70(uXg)ONdA`O{lBX$MsMNzl`l|!(UC027^T-PcDHW0>ZHG?qLM2FZW(P b)mO_d(^||pKTZ+(E9UKE4zcux%jy3B%hi%r literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/poweredby_WebSphere.gif b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/poweredby_WebSphere.gif new file mode 100755 index 0000000000000000000000000000000000000000..ddbae4684cc9c1d7112e1cb3eb211871476cb68c GIT binary patch literal 1387 zcmV-x1(fpE0s!{s#2A#6l**#`FE20P$@tC9 z$oTm1@c8%x022TJ2>9^$2nY!9`0x`25V?f-`1t4u008Ld=nwz`2mlBW5D@U__~iKb z00;m82nh%X0PyheA^8LV00000EC2ui0CWH}06+!*U?2t%*^OwLmLtTfa4gSsZPNoX z3d10XKAwm-Fa&%e#K2-C4l<*RrKbxBEWev}%k6o+3vl>L9uF2~@^=AfyWjA*d`_?1 z;lN%xjMfhrU}|H15o=#<69WkV2MGfQ06hSX36zmNmY9r?mye2_jt`THnHrLmmTdtJ zf?12WXKIpnymh<1z^bcU#Kp$PGY+d2DlbGvC|*AXJqiKTNJ>Wn+RxWL z0@zt18Q=j*IY1-SK-SjZ1`68eOV9xl1qBxkD#|xGLWukbVr>9DBt@uDv0`CLiUA6+ zY@3Lzq81NiWa;9QOP5Do!9t202_OK6KpH>)`bpWx%Y#9F29TUd6OPQ1M^x(M2nH7e z24-Y2aC5-ZgrY?!TspuM(k@B663Kiz^(NFuO)t6W(UcQTonSxOqIIaI*_tZQjmuNy z2!ep-dIb1D&6-*(-~_(FYY?3dFF6hRP$EEpwJAmvC`6*{LcRhh9Qe~BZSn}q#4MzE zXR))z!9WmngQ(cZ7mBA19(kxv$vn@nW6O@XR<>;qWB&}uou&tGkG&1uJWE_;fC?=; zb_^c244LB4g8?yvOZgt*yL}IMuyL0oNK)H;m-9>fc1?52kGyG8&+jwL;V+-B+}2n( zrXn>OkZ2KAtpHA7$|nF`)rNsu{qmpxFkbvLMs_14if*j9h$_fgNR~$xnqdnA1PqX)deI#?T#qC)CuDOy7FkCM7z{%~ zG_}Rxng}PDBxOIVI1nWc=Uih^0~A!iPm&^(fY}VGK{Qbg02w3@J=_O|8Z#9<2AK#IjA>hE5J+|?4IOxJ0S1#f-~ksb7`o`Cn5vLwGZm>e zf~T2=8rVRE2}T401(li;J*xW2+G^~iBWi52ZX<*e2JrCL54!@vtDT?%n}>=uEv;@la4q%>{+8AfIsM*t068?7MTRu`PM$O=O@)(2u{7KRAp0tuOUnFel<^~s^q`a@Go#1Vc1p=y;8Ysq?8yV1I6|Nz z2WTkti>hEi3&Z(V%k;h{r~9zM3~;BQC?5J(m5)0EAXU#>rPwuhTyy0!*D!icT>Mo` z8p&dHaJ^Zb(Ykz;J1=o;4Jjn(IW8=4w#_^5d>YdmS-tf;F_(RjDsV7D1ri*W1T!*V zkYp8MCVA`#kj8I=5T5bF&nn_`8vvNdATd9to(fhm0#yJj^-ooz`HKNuv#D&bNg=i} z6|1tuBq+GbPIk%@55f_E3}iqEZMk3o9P=0@5yOE@a#J|^@{I>_LxMWc0X1YOKoHg` tfE_%70y3b0f~dn!MqnQXN*I}EZ9!4*%ak(k;eZC9&xA&dqNqXu06WqaT#Nt! literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/required.gif b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/required.gif new file mode 100755 index 0000000000000000000000000000000000000000..bda06255fa85e0e7cdca6e8aa9a92b160ce7ad5b GIT binary patch literal 56 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 I>4g9QJF&>nz5oCK literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/tab_flowers_s.gif b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/tab_flowers_s.gif new file mode 100755 index 0000000000000000000000000000000000000000..56699893658542fa631a0fbfe0458536f5dc82c1 GIT binary patch literal 599 zcmV-d0;v5*Nk%w1VM_ob0K@&sEB1&;9xAy*>-c<~_P`B0dVzvC6AyQ8PDW5T1q2Ck2?Pa3Jq(gUZih^5K5cB2I-Wy30iH*hH-oCH z0}vS(7&v{av~m|I6b}y_7#Fp_NfQ*BNkF3x38tYrqm*q!K%IVZ#7GDR*bV@T3k(1S z3JeJf0S*dQ3JDAblMD)96^~Lt1F>>LoojWYa;U?aw9KT~n$?5LS0RaJge{IOkvOYgI zA0QgJzM?%pG=Hjm*xtSA?$C;jdg}1b*xkWd$?EZ^+H9ccpg#00000 z00000A^8LV00000EC2ui080QP06+%+K$OrWC>oE*q;kn@I*%v;U`nl82MsJ>z-5^-^0VR}?W39YWLu(7hUw6(Uf0tULfyuH4^z`?@9zC5}DG5|IN zGcT&o(9zP<&tOH=Qy3I$VjdC}1SAp~+YMk-76IyO8WJQU4HjD$00A8mAf{xC(M4r- z1o}X$bEjUMEm;DL8E_$ln*nLUP*@Q_OGJ4O%^V!jPr!kXAVZ2ANwTELlPF0Fh$16I zyar>i$(%{Eo{b_F2Gl^Kv!>7gpU|#hTaj^q2o3de)|;YkOMrA!?5HbK(F=t!6}eCe z^h_u<3>!Rb5D~!J1r;4Yap<6dLjw^UG63M9p@Rn!13GXRkRb)qMD+rI2vdfmG(H3_ zD6I1gLjVc^4M_+fLWPGDE!Kd*fK&s9!2?EZNTGsni3@o#xA3d+Uq^`a=Bb-K+t0&_ zTh0w|2mmr|3Ki9DBNW)_x_QNED-Te_f%E6jCrF>*e7be&(4$|Mo?ZL)?%=Z*Q9!=D z`Sa-0t6$H)eR=^5;>({;U%rX>_v`DwpI^WI{{H!w9|}YuGeT29CHT`A0uT|x3~vCp z+=LWXXyJtz&c+8vH8>Ohn}Q(DM8Gw5nBzr=D9Ys3G)+PER4R*j@kKp^uoaL^M| zDtX+&l^!cfgTatP65!2K3?&3W2;hJLl^5WAk_JJ3fJ4Pbhe?5rW90yF2mm6Sa9L)R zSU>`20k9xK2sChT84QfXumJ`Vc)&siYaMiDM>5fg2vUb65>W}BaIixR5~M%^2aLG6 z!JGs%qS*;Cl%T;>BM_peD*lAwMNFy;LP1VtO@`J8i*|4U3^+Ja0tYbUg#!s&fDl3k zB~+vV2mo9_XmA?wS>is=+`$bRX^5l202Vahk{5AsauEo$?DESn$1L;A zG}mmi%tb_?^Ue`K;B(JB|17l6L_?r+(LwJ_G|x;I?ex<`3-G}QPZTlr)mK-o_0~&# WP{7w*lmIbYri3BI&@kwT$Rl!0E|c zh)QPe**x4J1PV`p5CB4aMrmL_H;0HnUuJf6lxZ{$7!x&am7PE|5eo|%6BwSSHv4*(Ar z1`NNFWI94Zv#xhw%dtMHsPXXer}OlkG!hP?4iOIb_y8=J;3gEnfd3)@kT5~QK}wfw zIQ;i;jy-mfdh9{>=*cp2MKmTDN%C4cAC5Y5s;qI5j}rt07+gqTz}PkhH8M1)_RBy4 zpVye31kln3G(AuXDDA>UX@LX)w$)TeDB#Bt&FAdQ=(HB?h{?{e z>hR7F4-V$*%m4oWA^8LV00000EC2ui0673706+!*pdyZBX`X1RDj(p!?gIq`1Ozw% zRDjLLfJXq}fK&pI*{yeb=wL7f^cCPVgA2(mOT%;);Kjyb2`?NCjiqA=&K}d3!a%Rv z@A$la&o?LvfPsR8goTEOh=6g6jE#HkJ;MV*xTOU zQH!@V54l4RaJ57Z=tDO;t;!BO%f5}>R5t87Sv?D14>(BB0HDD@3K9$epwOW~hg=md zEW6=u3O*ORT-D0Lipvg$5+tyBuqI>&4{R*|3?x#kqD34qW9EQa3C9j05a8H!MUiLA z3Nv^PkqJ{lgri84DqYI7sne$s6d;&NwW`&tShH%~ia^1DuVBN99ZR;X*|T54sa30h zsN1)2>hY1EsipdegJ?2kZqC-aghK* zw#N1Do@rK|9%OOg0XPH+7Roue!0-Z%3j`<-$)Ze`ODK6=FlUDm9S2qwI8ZR9tHFg( z9w1a-a3Fu+iRiu6Q%^80;Z6WYv|^51PUXN;3@Zn^r9cA|R!HF{7Fvi&g&Strp@$7% znBj;D9AM&!D5j|5iY&J1;sFW>AmfZQ)@b96IOeFM017bRZ0Uyj!8aFO_4bP3WG^GUIP*~iVsT<1vkkxgmg3q5)3~E zjf7_ag#iZM0gy8W3c{13zEVtCI-SEyM9?!6_QM4T0}{A7R)ruGV!{Xl=@bu_!-o)+ zP@%9P!wgsvGioe_F~bH59spp75TS#|jVM$9N~zd^B!-6da?mqaL}4)=H5rT(#&e;N zWl6FKRl>jx4m`GCDj_hy!T>iGAkc}_Czzufdwv9%O2a^cIeUoYK)@jY2L#b(WP+pM zhL;B34!{M+gPI=%bj~VLQ-Q;b3J%n1`=r##5ic|>oC)xt!GHl_0qhF7biUtZKDPW+$zP>H_ z@FP&r5HdmrSR>gdU@H+|z{`IE06?Grff{6>!GI8!(%^#zf}|h~57HOmhM>^*;0zWb z0p2eo-ossYCqB{KO~d5#+=-c4RRaPJFwnpO&s`G73<)rBzyQB_`A;2wc`cc_MNr$t2!5(*+S>SOrG~1)xI%0|OlJ znE@4W=KyFBxB=&505uuR1$sVahN=ZvU}H6^KB5Lwj~(Y#sX?Biq7^zw`h_1*EnJrrU@afTTVx2MRsY zC8`XmbENDIy_dj{4|} zlXMt6M+^~^a21-yMij)OM5OeSF^r9B>=V2mk7Cn97jtMcC^g@#Gs-*nJW9?!2Mu)4 JJueUf06UA4r@;UK literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/tab_veggies_u.gif b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/tab_veggies_u.gif new file mode 100755 index 0000000000000000000000000000000000000000..072737e50d29bf88f8f9385a3ff4a3f394b21002 GIT binary patch literal 1875 zcmV-Z2dwxs&Rt(pY;Ru> z5Dgz78fckkAR!#d&aaxDhi92+4-gCJ@6F@r%IfXT4-XLL>&>#vvTmMjg|3BorFiJ; z%%j1hA^8LV00000EC2ui0Ehr106+%+K!k8eEERRoAtlvN0o zZW|qQT>}7n1OylbTM?d}S_4}Hk^mqdEI6cX0s@jNE+2As1RyvOEg&Zt0tLn#1sGJG z1t`YGAjwl7&H%Lp$(sP4*8|T5F#sb1D>NWpk6M@r2kq|f@bU8V^!4`l`1$(!2oC=L z00RmfNU)&6g9sBUT*y!b7d)6EN}NcsqQ#3CGg7=HF;tEzo)m?0Lx&Q&Z435vKn8+K zC;|iah$sM{LrH5a9I+74Ap)}hDSM)|1)q~#-L!-NSH0zv8!=n9=hT^wFfA?XB_2~$yEpz(oe7dCh0 zY%qeg-n6A?hz%(=7Y&!9t#9!C>oDBS^4G+YODdW6PdRn-b(H zmpZV%%%!&P-@s=#TC;^~B|uvC;8_59aUHOY&cr#>^9+Fz1&AwhYuyVdMpMwBy8@Pv z){+zadKsZ>4%n=HIF&zn(Ksc#UAznsfkA{W3@e-ilNvBBUKpkEg*#6SWFE?|d2AXE^r(@`k2q+tS78Gs=G27FM< z6+>BMpA}^Fu>eerfHl)gEV$5LNUTh-0t_W^Km!Xbpb$eJJfff^3LLDkLLMD_Fn}%- zfPjILFc?6<2Q3W1f+_%fKm!IC3?L$uD~vE_2`C6~6b^#XAmWZ3xPXEPG}HnEIm+D{KhFh5&4_$Qmnbu*nv?EVIr!D*>{{Hf!y*#6m0Wv(k3!Ew;!a z@W8m_mTT_0=%%ax?z-%@>+ZYo!ixX}^ww+dz4g98ufF)&JHrh0{@d@s`0`8ez%Lk# zu)_B;Oo7Ao3jD&q5L2MW#ZzDw+{PSttZF5f+|Yr@0Nmh%$0(=l+XhTc!jU2XXsq(g zG+%TZU#TIUH zl7~88FeeoxcQ^zHVCX$Us~3J5rcu#m47beybi?`R6lJh=N>ZSz<2C>+7{EdaASBSn z8d0tR00$_T5#H90_+cvn9IyZh)Ke(<35NpkHHjBmX9Tz8KzZ^V21yQ3fhYR0;mMnH z0sx=@E^v_l_Y@_3FoFvVLLJHoIGE8w3}y<}!Uz+5;DQJ+oTB`hIib)3>J#7~LJ7xX z1EmN!$Up#99KdjW3D==OB@7tB{RtSMcw@{61k5Cd-K^K&K?fkTV1NKdNi7ZrAn;NF z3~&ent?5fE_(1#)g@HpUXaTAyfc5Ak3k7{o1auR?Q!r2-R@7nw`{|Dhih+X!_Gl{- zxdS>t=!Xb&U=(~9zz7z1iuy5V1n01ZpFsD42~~gtE%;I#*kFJa7+@0uAm9`H~?@duoS8bbbya5z|o5WfPgz}5ac=Dk`lVG#0$~5 z%5B(^ModuXJNe1uA5bMqpfF_-379}C!PX*KorD0F+SOlb!m7!!2o#{$#OL;KlRRFH zkdP{+uP#8$ViGe2Dae2gY;b`Lq@bD3EM^9#*-U04GnpjF012#_0un&;0@=(!GmSaT zWKJ`h7r-VsiD}JtUcd(0OlLB$$;^1NQ<=^*Cpw=gPh_Uk2L4QEF}-O_Vj_S62u-L$ z7s}9vI`p9sji^K?O3{i|6afv$s75!+(T;lbqaY2bNJmQ2lA6?{2=IVPSE^DAxYPr1 z7GUX1XX?_L#uTPD&8bdl`cjt4G^aSV=}LD>)S?QtrZ8=3OmFJbpfVK-2rz+Erz%w> zP?f4s&1w;@I#sK3)dX5?f&#`$*0P%QtY|Ik4ivD~9k?~EY+Wl^-#S;g+V!qub*o(Q Nir2l;^{hbv06Y5UK>q*$ literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/tabs_background.jpg b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/tabs_background.jpg new file mode 100755 index 0000000000000000000000000000000000000000..9f3738e7c58602878bcf0e4f3b86002ca62e3ed8 GIT binary patch literal 746 zcmex=C5UDGKg1x& z!Jxq)&deytz$D1XEXer(2*XmKcbFN0u15eyb`EAnMg~S!gb@i;lhhdj*P+#KrgW)Yhx5t zH2C0{c<|y!1;fCFg^d&c-(uhax{*ncSrF)s`yL-G>`3;Gwm0j)d2~5}8XJ$MQZm3-7e@+pkkA9_Nzc<`TQsd+W-w tt@d!c1VV16i`w5!zV#j~#0<1dpukPNG1dP}O5kgmBWcQpk@f#?0suunsZ0O> literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/tabs_background_a.gif b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/tabs_background_a.gif new file mode 100755 index 0000000000000000000000000000000000000000..eb2d540a12c3189ed6b6b24799cab444dd49b565 GIT binary patch literal 477 zcmZ?wbhEHb6lc(2xXQqgJ~PcE%{X;dTE>htuNu$5=75Nj&KkH1}h_VxUe@7JDx&zO~d;pw-lFTSVGOu6#>+quVIE~gW)5Mk7z>7ZhuZ~QMdx^Ie9+V_VVrfR r;$p+`eg)^QFCGh)oSdu?JT2tFrlqH+8$^oD_T0Se?CkC)1_o;Ym!;+FC!{W$9ms}_A@29_lp<2uX+D^ zt%9nXj#U4NfW(tIR`XA{lz6R;TDpHt*=b&m{SO`__~^|(|9DB&*>el-zu#8FXMN-S nk3IMNUi|*w&{)ge(%RPE(Zbf<)7#hI9Xo0Al&RBf1sSXXy4g~= literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/theme_summer1.gif b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/theme_summer1.gif new file mode 100755 index 0000000000000000000000000000000000000000..648b0797d388a6e41737fbd87f83cf245e7c0140 GIT binary patch literal 144521 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%0DX3+Ua@Qoa7do^Cdx5 z2qtm{VBP4h2ue9&rX?*g{u`}2@CV;^00_0(d4%GCrejzdGgGp(WVsGz|8@#>TCYE- z6xy+INFUZoqgXiI2!O)HL^9v^o+bv`1>;E@<4QZSLNK`@7Q#&;#e5+FSoL1PirT(! zYg3WThf&Abxs7sWrU4%*#hf-+BQn;BjoXnBhXDF!jwt{*o5=bt6=n~sW{$}8K zrs%@(JETgF)^z5AJ`~&h35Qd|9M``8QCr_1Oj&R`=eSfH?ldJQ$wV7cTQH7Jp8zgz zF!7#YX>ONCjtGk~R@hW6a?@hBgnlq=+_A8~Aw0|1QdUkR2Mp>|9Bc#5usy=8c#mY& zXsJJ;qIvB?Y_P$jHn-By9X=yamP%aN%cweV zflN>v>o3SnsELWwsn+l57_sqyc5E1wAm;FUs_@kVAhSZjuL00!cS{wJ>oZ z0|9mrf5H>hkG|8yyAy`ic=nbQd8BS*x&um+VE={>w8pStm%qLkpGoO1p7`sZgGvx@ zl`W`qj4_?gK3XL)x*Co`u}^xPr3-Fw^M#}{eKRg8!eUE6PF*$-0je1a8Z5_~cB0p@ z2R@Acn6lnJLl{`BtIgPpyePI39&l*;6ecLZ0YirMzEHDi?sgzf$jOXyoyo?ID9<8p?9D)2SVQUTeC^~%QMqGL4Eh|Pl^u~+0`6kg!;(AVv&k_Oymtd-m>v#j-LSggQ zaT~0PXkf%IK!^)8i(YNDohir--s13UkwcgSTl)$s)fF$8$}KRq{j$~e!CIV28<{hO zS%YRi7h-}%ZelI14R-(6rqombhHJJCd@NL~S^P=aGbz zG5}KsgDdr9ODVWqN1{u~5!Kty>a5i|a-9;xl#uBR(4XP39!^}YkM}oVI%Nb0DdnA> zzHw>|OMtl@G0#*(^wKfxndCPLM$#O*dIN$lpDNgG_tP5)U_F>0BV)bo1$Z)}R5h>* z#iyKS+oPCY+jeCBN4l)ubzYW9fq)8W@`wZzRA5L5ff5FHu@)!Z3gILaKOm%tfZeX& zVU0poT0nxQmFTdPJld!ZijiUVJMb=5lcyBeFH_tv3@iYolV8&|Jz_pbiMc2tmjhgY z@qGUO&wBZWPmhx}=zWHy5neKIbpny5A>Y+N)TvmO9&hm47neXUg)xGIgpFhK{;#6* zaBCuKqxejECrAs`&_hu}lMp}y0is4ke&?rd3W+d`urB zY?_L(W`uDAy)Wr`qbT&o;}$kkP=pNfM`pBPFC>b*e*S>9aG4!nKV<*mq&8j#1ZBXl zF;R6=-@{UGksNs-22A_9*P@X;#Pt1gg>25kEe?l$%cYtR< z*Gbu+=RwR14fGHLU8N>eu^|@3919*gdYQKZ4eG*gm9B_{KWJ@0fg#eWGBHe|Q@>&( z5~x?=v1F7D7y73X_Zt~{5GcA359zOh{i@2{$HVw%XNV&kzj;D-riJLek%qW{M`v}- zxKfo0>(MB^)wCltb5%OLW+5AVK3wI|jWeZIMiViXH9F0z;@Nm}ld2|Rr0q9oa?=9x!sLqYG>~Lf|-N?qaR|BpJ$qD%>WS*X3bQdiu650m^@7^*;P@?yv{X<{H5O`je8P#1^EWaPO@2IfPX3JO} z0=nFu&ah-Pkpo^~zAi_CA~~W~g8>+Pt6Z({NYXlYZzHM1Hqlm z@oOjPe?O|GC5RUE63#j7IpkVru7cXi5=c^_m=fuwBoYXC*{jL3+DFf?mrQj|>F3dk)!s*?AZfFmkQpA6mspxOUGzrQl? zP@#?47=or}+ik*oVvaHc`+X@9fWdSFTSlsuP!~=OxX;I&V<5K8_P)r<0LZHu=P)LqyYDX8 z1|`ft?rhmD(02^fQ-To;!TV%B`x{3(-ro<Izkt(g2n1t67x0k!0A@98Us3m{VpWygUYmO9iUXF=iLNIM%;kV%W3`hh3GyVor z|1^x6z>Pqh2P02}&*}%PHQ1~~a5yKnXwL7ULMCmocOkKfym|=R;!hCQ`y>iK)}#0g zOH*luOSwW%uwl!kPkF|gX$I9(xJ8 z8K(0aa{J{5aTe}oH7jfq8Zs^^^6eW+ zf0{ zwEkYw!G=^x;nn%b_i94ck9s>Pd_NCYrLC8gkEZc(`Re)r2KtH$^N~0Dk%vzG7n9D# zqx=wMjhunnka~96#q3HU2@bt2(77_kb-| zf2F*_S;1kbVG(iLe=ZzbHvrg>@uqT&BO8C7SZS%i33$5axgd@T68h4v19%feh)@Dk zaI?bI2x}!Iz7efOPX_aJ+*MZw$=-uR4?ild1P$zD-C$_$;B~JOa=;m4B}jx^F@?CZ zkyE?xce9a+R{$&<>8^s<0Qd*KyaWYZ+fEBbF$N*8uy_Yy^V|BA_cUF z&4>P|l!NUKY=JdR@NaVhOq4ih-Dw6veBOK!V$Vg%6ZfUS1KH4$z44ofV2~IdN{&rn z`Sx@F@Ri$ZsQVv>0Jk(y3r%r{48B)YOk*SJR9<&KfE&a9(B+M?|2ep|dK>d0I#Iq& z5sk^`jc8Gu`x$AojI^1zw{I|D`^jS;xnlv+(T;HRhzcFR!`W%@I=s=2@oiV6+p1I; z3u0-N^!fk!9@Ec1u&#ViV%m9F)I_kJC2n8_RxMg#AIaVyzj`g&_#;H(&V_gK4mm8_ zO9Vd6J&HLK5ap(!BNan%|*7rvNgT-8+7@WkI(RVQ%uOmnE)|qd4!A z1_4K)9|KbT;+TPT2GN<&@ETY^04;=(r$tsDW}tMbg0xn<{dq!~M7%o1-c9y+JkTMh z<8f}p<3p<+r~VvxK}MQB9WX0>tl0Q2Z_DG07GxB;FeW#?ZPaq_@(!rV<*i5qpX@~1 ze%Vvi=W9?IANJmg4fq?gWd+~->YhExd+19i0}VpEh1sW})QcVK_6T<*_=(LFW_{}p*fQ{RJY(1vw5L_&A?mDE277d4ot zN=$|d7Ry60Zy;i%CeaFb1`sm76zcbB^?Kdc=`47{)~xw&v(+|hF4{=0GngTtdRL!B zrcyC525K6Dx0qPHw;9t$g7MCYsL-I)hHDD`xf*@xw3%(Tfv!X^4DAIxxpI+;rXhbv+e* ziuF2OiMQPVHC5yFkHBf8IdCq)UAuMd^=v-`JF9T}`6g_+2Ky)V@Sp5o^AxM-+dTtB zx?8BUEnrYO`q(xq$#4-j783n*Q*=}J&u72?tjk+RLnTCvuUpT0+;#8q;p_i(Z+&;e zf(%W6_Z#8;m!pqYjz9W!RiPDbHxVFig5@l*#q3Ld>=Yg-)OwaJHWeQX=GZb3C2{UK zDvqsKY(TI4Mr1|t3~WQ&7l>XXua@NoPO#0xf*r9nF591fn)9?9Iv?wsojoFGk3PBo zMR-qx=zYY=IE#;JWoDsyxif9rH&@LMcG8Rceecg8Q6>7kg+>0m#y{_w>*Y6Vx&i}a zv_px{b4OAHb>4a(DSe-LL(r>H$Mbhy5)Z+ex;YY=GW9}dNBqS-mk(^1kCly|%`Ea0 zI?dqRBhq3frfg>PA4S|7M;Yuw?A_mY-~cmaOwdN2G#r0vIA*%S<|Z@qbIu0=nXvNX zk?Da~Gi5qvom;$M>?u6K8P?{=PJiS<-WOU*t{NCHwpmyl$lAF5mQ6(TwO7$M!B}&$ z9ZP%~>yH+gW-KP?08g&%tQRe>=vCXT#6TH?rY0I=z&sz)8gv8j#{qS~dt!jpxYMD~ zY`(Xi?@#Px_z&+5#xc$Uy_sECobHkA^xfO*Enyg@vE4e%8kyQ+#gC;%n4z2_DDq+T z)z?DgZ*J1|!QJ=1z0JCVEc^c>h z)I{UYXnzmwIIgLdlGqE}Mb7{Nc$<#b93lggz%cNW^LG^J>|^ZE_eDiEK%*IbE~3N? zR0?Mu<&zx`60GKhy82HrNj76o8W5f``79=4Waq48wM=H)$Ldr{158d~1qG(wW-h?8 z$$PTzN|UwR@BYLLwH@m8S3;M`5kzbAm%Uosu!OaB9Esk^uICuG>?He=SiL*>XhNyR zU&pnEsCVkgF5wQo?-kLR5}$is$HnNs**v~pAF2ud>bDzyCzDPM*okp0OI!5XUECeI z=0ASu>6&La8bi%u&YB!l`nim;DvR|StsYW>9L6FEQ!#L(Ng^(LEV}p7iPqE|Je|(a zI7@e)*^T-OTRw~deOC47!@mwjPGI6uynu^Umz}Gn0j$X=f8#xBrY$dwyoq6GgK$}0 z+{m;2zg5doQS1^UhmKMT)=(lz>xi@XIG+SlyHAK!-~CHztzprCw(dQ3*)j!YO-j8K zTqN)-*nSGlG?-$S+)gb(#pJ?M_td-I?{&r%qu{Gssc?_>Spyl_pEUSMK@|-!(p3R) zM>P*cBSV{eQyr{WnCOuLk93;QqFIiP2=~`%X1p?1X~v$C(mmZt2%uBb(*g&9Q@#Gw zb~_v=h72{A@GJyezA2TDJFJ2lyK}-57($4Ev;to>EQ*wC;~lL4g`vww!I(_1#U$$W z0erSfjf?07jXSA0Uz{~6JlIYzLGHtI@2O2tBYC zp;6_Fc%}+9f?~(PY&$ccKcKf2HMbTrwLl!zT1 z`tn2osg;;;Da0CZ6~pqSt>`|WdvgAa%4Q4d0vzt z0x-4|+o^L9hu{ILzgvXG`Y_#L$0AUd<`Ch<65OYtx7bS<0mkQ9SzrC&e-=MZXP>`# zdNHPRv%z_zljq|cMGwyt{_q>Q;uw!m0$YrCh+PwA^=+$!c)o$2tk))SXwnbiNJVgl zQ{i^GP{(fhnsu64hkdmH!)p;VT0vgP$-SJwrwxa+hyrsT2j4$vjV(E5X`K3eS{TVe2S?PK{(DUEYZFl@IA% zVpWNoCMhuvfex35AU(BSe}uT~rs5^609(?Op?)0F!MG_3QP2 zw&#h!X(kP!y}VUvb^mTEXdu#*mj<|7f8#;W-vF@#3V?hgrISw4Hm+l8r+VCa`0B+Z zhl|oTL68&%xxqg=SH@9QT{)XD=H*j z|4x{H)O@mBffpY4Lk&m^{w!-5JCI|98r&jP9eef$g?`MtbwC7Q{j_28jNm}WUcYh< zju|wD75rQdlJYP0H+bJ%5;`R_D*ZrcF@YwAQ!WXNve~*0xqP#jcPP6{skRazs3RJJ zI|+;9xsZyQzhE4cR-vqe27fEc%m<*3V>W19PLumX;-({*OAS%8+tYVACGtZrH4FlB zl2|exYAEgs<#duc;L>D0vR^UaNaDjU zoj#zSA`+aa*2z~hSAJ7fc)Gik+6&nyHe{Jp3Y8L`fK4JS1Q6Z7ux2`@&IOFsRsS~e z>dt!ol^z%+Vrx%XzB5C2W|~*BaYKE+oVju*0g&FKqFM7Bncsn%Q-3%SZ04iS7+`)K z@$0H>|M^R>L1BSjB}0(KO(4l(fz)dt&p>a`Kt#G}kdi9g7x7+4<`pcZ%*BY^W# zeJ#}}sMjwD0E0--Xfn!NE+sMq^nYoU(P!`^uX*x{F6&E=J~c^Bxme{5&PJXoYG`fr zk~-R4D#{}6=hhhueaVe{8`uyV0HZZ<-wZ*ze}Qu=5FLEc(~Mr@)c@HL?o5GWC4jR8 zFeA}@)zDN1mA+8$&tV8XLmWj!q$(kq3(VckcUcQs8PCFOFuth#sOO`Q82%QLT`E0j8Du7NbV54}vER*L8g@Dwj zYOwG*)5k_?&*Jhzq}Mnay9TDfa|mggc?xKCBYbkzMFaQ&a~if{#;*|G3n+(lkH~zp zmF6pqEtH=N)~cadC?JSfF#YK?OVx7Wv)%o+HjWx^5^M|qteZtTGvNoZPjYZwf*s`w z6I6blGd7%FffE_}7YRNB6_0;EpS~n^rNMmJ$J&g=DG8U2v;iu15sFl8d03Dt_h7Ri zM3V4_DeR<{Uos;?1%vS;fG-i{?P2~m)jA|vYfx*)W;HAQkJ-7BI-#&o}rjHXGXxjh;BZsu774J0 zSXlqL(LzyZ#=ZORio!Et0h|Pjs%Ywd41^`6Be|YPQUN=6)lVNP5mmunaMQk|WCnDZ zvrzjK1s+irs)~G%EV$mElRkTLYgh2~fj8H7@l^R51V<*?sD`?0X|2-`EvnH&C9L;W z&5>DNPVflD9dXU=tq^$X0yGtXXG^c?w%vzd1$|il(cRz*o`4~5Om|-cQ9;jJ3Yl^f z776METux^RVznH=Rv{B`ak3SqP!N~SqqLpHC(Pu23J9A4v!zz!SgWwo-wjlw?x@i4 zQzn3_=OX}Ix+KB1J_tVEb7Q-<@I~K9ep%01V3lEI$`S--j6t1?)}yP?hvofQ^8P4t zP$U`cUZgh@v++X=D)~w!19sVm5eY3eZM@(hED)J zcui32CSvc&uqf*38eJRmeewvt>W^c64+=-og8W?8Kv?-SGj6IzjPI?$Xqzcmu<;+Q zL=f%;wabI>wR3)&Qn*e5gOKTmZLYb|R5ot#<@OTydG&^G?u4s8q8kr3WWGiIn-D1Q z5w0RPy$UWDckrBAH|@`zB+#lHIwm7CAQ`f{|6^!LV4O8zx)im}E2M%N%}x-xsFBW; z0uU004F-{t8Qcgnp3H0e5CU)k6c4TaIDL74v@BLQv0-fPRK!Ct@&GXE(ZS(a9hgND z)kSAo3td`~y`no+EJy(H;f~{>eOb!zuQ7gKry|OfFF%AnY??If2|M6b%~9NaeLd`n zuhG?+fdpGC&JnjKceHnY`{T0$xVXFKCsF5{bf3P@UpKF9^Bv!f9`@ChMWs6yx=w7DTf(XNIF3c0>FogHOO%9s)Ou6VxE$qj% z)nB#O9?tYdks+zdz9W~#6E^ozL^@;vw)K+nO|}=3Ld_chnKN3IPZY)4s7DdUGKLEt zitFZ>be6yZu=fpa3Lzr5u!o4v!ont~o)#~uy6-zBhUyjENK#CyEOVgxyG6U4HYe z-PtC`FcoyB#bi>O%Cb#zzPl*uOd?N=<-uRdk4gV7Fjf@o?%lBdk&T%I@dX0LW#2p{ zONa&lcS<34nifdoKfEfyEQpAPNY8+RxP_92Ta64e1&ZxubmL+OwPRsi&`<)v_pM1q z6)yib2_5?!-*65Z%=)dJb?)!M;$@7&lkLUPoV3UgZ_=hjY~Fsua2iY%4SI!duxbm% zdSZt7vgY0@l-S+y-kd37GSQ*&m90$}0eu0_p)Qm;ixrbN z@r%KiEJaG2X}?+HCYG|BRMX!ky!yPv-bA~Ys-O^UFBID(&ylGN@@=~_XKY=O4*_4d zZE(RA)GV(10rddoQSExnSC+^upqokQ|J;4vp2SGJ18!zMI3sJ2AF-r@_R`Yf}59q8l>$mKTD7?!#$wXi?;26967lH$j zyt{c#PzRQm*+@wgvCvrx+4LA5t>GL!asT-{u)U=2!RxGu1+(R3vLJ^H@ySBw^a`&{ z$FE<+g>#XI6s6uv1v|OOZ8At`E;N)bWJ#|va|6%4yDF&)cFP9#^?Qf@T@eiZD8WLa zHJbI5{;N)R{r*OruHWS1y#2X?*ydd+Jtt)^nY*71x#N#+IquMP++km96Grmfd{`g= zj82k_zMqRa@_W5K@3-1^z+WYFm+pOJ%kw=5kC;x*bm)k$>N$Gp4&&9-_niKJ*M0r* z{Po_~fBF6W7l-(%gz-wUs=)KQg!)htm@w7+eoN3Rl-1%tGK#XCjW(hvlitNVTm{|s z2nw{C`l>?!bqF$;!-d$RsNz4bKgUqM<4Bc>QiN_VuzaDq080ejiO^0XXvgn7b5Dzx zC_a{4hE+g&UVMUcb-ii-LVAInYP@#>AiV(uwnFA6Ogi$)XIuZ>E#v7)3+xIJffQhW zFYxEmzqK_G93cm%eOy-eqtsB`J&4=F#Z{~_CaGZPsI7lxDIbgcnA?2NwK7UJ9e{&| zo)S5eOK0Ay)*OcZ{Z{t%)b74pUJ;8I8$OCqOVA^eFp)tT^)W1!h{GX_=p?!=q6z%v z?ZKqG+ZOm+7;ApH9=GAIf_)=`nQIp_MzCSW5?=M}e!ixk!^THY?tcFB$eB4|92uuW z<*$>A)}l)9p^!k1d~x&I#Be?!PE9DZ*CpMR@js1GIYWZnq1KVpo8_4m*9+Ubuv$mPiOfKT4sQVn-*j=^ zvlDM{oqH%Uu3bLXrCenaqX@#>?%dvu;_Y!?b+UAsVaL z;iXK&a3b_nifK(%DgK7};V-ea35$M8o21mf0^0Ga%0R<9_M4fNx-@Etecp)`e1}5C z=muKoMyrkR&M!pJwV7<4=5XxFqEJ8Ss|vlVxuzjZCoy=y!8|+IG0<=%_|p!Deia{T ze&W_EhR%pecc6NC!i!y;)T!K2YzK@t-8S6cJ9OK`La|-o{UU$+i1{H}-tDfc{Q7gq zL%rJv&8svVLDzc*WYqJ$;&T}?K;E`jTBtcZVhEE|gVuhv(^`)hD(9wgM6wGBKLgYK zE1HaR8{b5F!WKu4*?N>ZG^GaGpGz3)ISy^fb`3IZp%DY%Ei%xb`h(3k9DV*~c*N1$ z_sXK9aY9AhZsXk8fkPL7;|VErN+crnSchwtj^gg$Lk@jSygCQIFC2rqo~8o#8ngLd zVjL3c1iKTqe=yn8Ztzbw^5UD5mGGXL>w|h7mWTAUURm{(Z0@#dzk^SA#(zE(6}bWG z97w1?W3>!EJ+yMQy)$qJGT-s|g+~U(O8)DTi>z00;w-yNtjLXKVC`f0^{;JGWPL{> zIH36yM2pXLV;aO0IsOLoxT8U&T`{^r z2H$oygcxoT5JQQ6C_O*VrsO9f_K7t4sLg{-uJCWa(E+|iJ!(yP*`a{BcG@6W2qm0e zhy=d@EOF^-k&97;W=-&Mih*J11SWN1jFYGV2>%xzb9Lh3?l;>Plx-G0yEeY3A&}<0 zQh2$x#?vXV^^6L-v1oMTKSO?o{qq+b7QofBPG{||D8z4e4(jJi7%;9H)T4!LSbi@< z=w5iZD#!gD;fNe&`;m8ui39Ix^c~IH zJtWkUoPtaVr!{StEOPXOvU<)5TV((*oIez_Q#aIkK{e z-*Cu46*f(mx-LIaB1#ng7;OsoeNVyeq540vqXB^_oIK(C>;dGT(v1y9$`B$Oynjl|3&>~OvPqsV@zlJ*r}sWHwwvV<7X0+w zwB*J#D*8~*Anb-FgR)su?2!T41{3Ofj_4NW70emLq6UqhlP#jN1v;u(rs#x=W?XWy_`~&)^ocYS+cq1EuVN)CNe#`!P%pA!01MT za6=Q_Xl4b24v+$~<#WZ);UT01S~)hVrZjztY`jk5hokZUFR2lD#aIMC!@^;&@c?sx zVKS*+zg58SXzwy{-J<(KYtYBjE5_`hW@=Znpc8Z_=%L^~)Q;vo1_spEn0bwWP-_b} zq}|l{PhPbpRNEOX3*EIxDS4AdUORRTXYHRD{_xr!kCNO!W^!6C1d3LzNxD}+@a zZ7_9x!-H0?z&a$23{NZqVDtgh7%k0lV)hnW$`GE4;UJzb7zMfvd;Uv#X;RM+3fj%A zGI(Ch42Do-$1Nl42WMli1BLD_%aJx*;lZ3UQA8E77-Ly)7bPCmRyAFHQ{f(*&RAK+ z;EJoWto3J!w@mUg5!*DJ3$rX6>(E(3YApxvMsus(Db+E-L5+1s1k{4;g1%(F=_(0v z^?B;1!V28O@J7CCDkwm`-<7wZ&Z)5R6B#=7%++Ewyy)GpWB$fFJUc2RAzYJh@%L0=LQD zU3jVI7`&Mtou^9vuX-(cMHULW?UpJq= zgP9W483kw+;U%HPWFkL8Ru3`MUE)YV=_Baj*)gQvlB)+gJ&MYS6-hNx& z2eGDoyA#+LelsnxEN64~)ya0HZcm;+Mk~l47~Ijn|3SIajXriKR*4zUy!6Mfd+up6 z(gzs(nw-|o%h}_9p?WG}T2a)*7t1q28=vz}b2J zoBZ%xb}(uH(Gy?HK?SY+P6FsCrYxWArw8Mf*gfa&o!VFrcas6Y&GjY|h93j@YD;pR7kwJc(?ivN$9>Wdew`z!BzFi7CBVLy)1_DJKYhHczX zr);SC`|@icpm}(xdoYOqH4bMfY>|#NRSD8(*@i4ZSr5jhG{Bx(+j-s3P@u34ULsfFF{u1Tk%G80C6oVz+ebRqmv%LN)`{r(PkcIip z@ozkx@!CTNjdDjhclp&8w}A0yobe}S2%I1ne0IMMGSLCR7qbJENpSRIWE`|C9oX4 z<4ih8Q)XxT$B*CaP>C%RGm+WP9H$u#s54&hCsseAGKR;eY$A5FhdZtEX8?fr{{Xv@ BDVqQQ literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/theme_summer2.gif b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/theme_summer2.gif new file mode 100755 index 0000000000000000000000000000000000000000..c239e0cfbeb75eb988867cc0057c68695970f484 GIT binary patch literal 2582 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 literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/theme_summer_text.gif b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/theme_summer_text.gif new file mode 100755 index 0000000000000000000000000000000000000000..22b8bdbe873e1de803db4c49f2c99a9fd076a720 GIT binary patch literal 7591 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 eH+y|iUhB-gh}WNM_YJ6HP{Jo)q+tQTk{HKwv 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 j=z{# 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%0AuT5$dyLetH=QwxZ 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 SlH@1c$I#&W^W~e9KmXZ}DXa4U literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/trees_aspen.jpg b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/trees_aspen.jpg new file mode 100755 index 0000000000000000000000000000000000000000..51628da3e40ad7cba3795d1c817425fefb5d8dbb GIT binary patch literal 60477 zcmbTb1ymkQvp@Kt!Gk*lcyMySqzpCpZu8?(Psg5adtZ_q+G**|TT& zp6!`wtFG$m>R)%)%)BqZZv&8}#3aQ4VBi3N$;SnFKL?A)}fWMW1_e%h| zpozVaDZr%XqXrBDfB^{s4TlH-5RU->HV6Pf9u@#_&hx$o2nK-t?*sV%1c?6*|6vCQ z1N)$UJpWDj-)7$X04OkkUx0N8Fcbhd3K#?m*!ut&@rT}!5MW>*`u`_DgMmYR0zkq* zz=HkXNnijd=uhB(Nyr~0a4-mPNJvQNf4CvQz#*XkDA1^A=*Sq1#3Y}HfFfc7LZp~X zg3K(!qO4?CY%m|)f_-QU1_cEP{jYd%2ozLE05KX92^6}ZA~O)$&@o;JgE4@GRG?R> zpY;=RzENObP%v4YFecG2r-TA!k@;kH)DKI8gF{0gz<|U3(>E9Z1)Lay2~|+hkOU3V zF`k+6S3rJU?~G6%kOduCU?(WCpEX1Yis;(Nsi0oim=q&0LD`uM?PJh?O$qT|!~ZY~ zG1G?($6o>Q$bb2Fu8A1mR{;nR9}Q6;P(CarmwWhy>r?2NaQ?ldIm}Aa3vU5)5s_xx zfI3Eqk(3%~2rB~FH$z#$JQ5iyCqe@@#EAP%A>;2+#oawe()FNXI>A4DC~~g)TqS-M zj(tg0u!`d;WFh2K$X2lNBDjeFD~SZtNaR}xqb9GqN^2#)-dGJEvN<;>Q?}(Srs<8X zF~gJ#gLH%M6N*YdXh)1Rl%T@dAgPLpWUw2Ph~aLrpF*y*I(2m#fcJ|#$v;ILPme2?i#DkOV4t0r?6 zJ)1l{@>(l6-rxvLB4(DtG|>nG2*g1Lrjzg2ksIM8n3|od4`%B(;U(mDTQCP z?-rK%5B{)2NSoW~^-``ht`$&ey+R#0z~_`%-Hs|9WuHZ=`8r;IpI7AZ`mY;O59Qc2chXnBug)@>D z%_EbFhMAcnTj^2GbW$PIeS=UA-~s=kn0qS>4=g;Dk8#HLbF7 zjsB(6bQCCTCm3WCTS>Je9>vk@vdv9cz0p6UpG$`z!(}hja-s6`=i7t1GC!h zVs9{8)ncG{;PF+3AJK2|@Q+2oW<-ppf)YLUF+nuH`s(zAgiqq)T$GeHW3^@nGTp6$ z;EL-~?$1aVBUw>^6&;ARiYkBwqg;o_d-^fF7-+Xb0F*lU!8>@K>OP^H=(@=A}I z2ZCnWXc||X5^3kFd{eQ}oyYZdmmD?{XRwro-)Nf(oKC)z`BO6c*#)`GM0U_jZ)P1` zP=uP1&S#*a&&E|rhO<&WA8gtswMSLbAhejPKe4Z1nmMht z8_dj_Id>bj7o2P4EDCZH)}ozUx-4zX+)AQaQ6|Fm)jVk zJ$+C%``t1YLsYJdE;)tXDSV3dW-sBt^p$X9 zv8uYIeU7gA25fp#-W2HPXeby@1SsYphZsp8<;G~tyEH{Yfz(dalIG!fC{FYY8@PDt zPrO}Uf2JKOhFj8np%L46^R^qBd?@v5J-h9!;RfnW7{1!=nF<~p{qf4wMWC5&Oipj(=2SR^n6jT=nuU0d+Y>`UOWWpxYdPvZY!Wq1 zTx}+KPpGrau(bIi!z{Nlw{6$qdhI^=k`J`%b#2CBT_m?D<{?~P?<~m~;UZFvaAKHC zl$a{iUb%5!(GRwq*AA@f?(WoE^x{JJ18UT{&pU5P9i9&$Kto#F<$3L;SAr(WMZSnG zinkXD z=iivthIdAPN z#C@IoCPF~4bz9q#MtIoy zxtX0mWlP<{ROcDSmO-OyP~^&T+3P5pka14p3g64NVXJ%x@7_*(PTn@;yu-z(siByt zMwmfsD1IWq_90SxW-Zf|kZDb9#bdgp#g(hlc{~#o;pH*zW#f9LcHmoAEq4^{*eL1C z7I=&Q=OR0O*K0|AuqwuvMp0^qpefXpZm5oKHD@vG&Ks=gtNZp>ht@_dH@&Z%R2N>` z-XpcfneM#czCI&NT6|iI-0R&h%~W5rwcvS+6v0=nIdAYc8fBPtRdLtb)>xXF8#dh)zzzScFIJP1?;Uq(VgQT2(GSu28@A}*5pXh^SspKyo zwONCHs#Y0jR*1M6PfT2d1{q+umofLl>+u~B^C76VziO$bK`-M@Uw;4F{c+mmp5ai& zW55MVUS0+j0{(AjA|hqIj2G?+KSZyye{|5NZ)pI>`E04ZqSmcq2(FWU3prr0AG}Zc zEAN08(u{I_{jaijOM8pfbDC98#*jsj)*Pq}AaQYHuU}z5%thj=Aw*^jiGCzRgVV;1 z)EMnR7P|d2#5uk8f7LgCY71{;lv*w_F4he1g&8sAy0STr#m%Y~&m4wwzPo8@FAXBV zRp9+F$H(x3{z>$54>?+AfUY1^$m%q&LxP*r68Q+28g$1BT%NuFBCT&zL?{wR(N4QK zkP9*&s{N<0yG4J-^|xG`%faqMrowP)M>_-+8)E+hW|lzBul?w@7p*%83(m_rIbx_S z`RZ&Ze`n(CBbw7F&z&3|rpz%6)G2JmF*N3eYOqN!iHF&qL?}%cM)W>RC)qVg>j}Ib z;{0Q0ZYp#${L<1;y!y`o@BW#acR&itE|IOCia8Mq;5RaXG1pWrdhmrOUJQh1K{}D* z@Jg-(7o5bjKnet`VNVoExp8AuQuO8DS@1er`iqHMYlFnfI8uw=eWve79EefFH!y59 zaYLN37PBlR{W#6T7{D7de_7>?Up!Z6Q9J76j6>gfaHG^dK=EIYs#9jmy(Qq@Ch2XU z;Iv*b9@dES#4st&Mx2BQMQW4A+4yuOjdFt(J7me5|9jj?o5%Ly1Pn5FifOOySj>g~ zgZ&>|R_QGI<@>*Ml-WYrQ>7D9?L-yT2cU=}X|L85Ou~jy;X;18huc*U)jdp}g!e)n zkT;V^#Fdo)GAaU3#9BT3F{T&XfAD=Oj)P$zKy~{RKaP4$?ukENOKFrD7grcsFPXsO z1UZH%Tm>v$2*DE@ST{ziQHBnbWHv#!QxU~ms&@TXlfSU5Jpy5ah&m7`N$ zjuuz+L|ZHfYQ~pP&QAk*oKrUkTs5sYaG0Q5*#Z411~rY3w_FETDQ20<=4}-FsSP14dh(A>pEyR z(gNn-Cs8n}WXxoU$lwRo{+j4R*wo@|N6ABTjU$xfD}f{e@{Kld;Jd!5#~j;2sk7jd zQ}y71IUH@t&9Pwu=9)9CYs;)W_#we*h3eGzi+ZHT^bav!f0xu>fp6`Kq2s}pPV}_P zGmhUSD7xx-Dh~z>!Zd3kM*o0hTyD$JVwUk=hD>@y>`6$apIF@o6V*RwjkVD{;p%i< zS_^*c3|{}G*jsnCCiCgO@1?{5*HWOdlcha1d5Is%O>+Jq7PELly`(4f~*wUc~Y4;mJ3iUEE zN4~y=7s7MzfD*+Ok?I2~b_L+QAnljddfhKsbE6VN34|BPjZ|-rg#f1CbHY}s>`);C z6@ttnnHnw&Sc}KW&2F7l2Z21tvZ2h7r79{DhB4U3PYXB3^%|Q*m86kz;~0ab2+@Xk zq$^}RZP*5$nTfA0y+++%=yz^nho5AM%i)2lVmzLALAC3cRK4C7R!_6^pP3|9WL@;| z0ldt%K7JVFv*yiq3_jddDHyA`4A9UTu|KH-(oYH*yaA-qH8*l6`pqV8>JWWGI6@bZr< zIxib8;;stiFBGdDorS}scu>hAT*yax;YO*C^?IyFOU)QV4Adz`k%=pCw(9Fv`Hs(W zzDUM&aj7h^hJ-9%Y_R6LomQ_;g^INGxre$I3o;D}RV5R?_zkak6v?B~*iFFlET*oj zM=Z%CD?jo{E#ItJLjc@oNwiH?mx+Bz9eR@oG%T@PjgmIG^q8uMk#MEj0~Fc6XQ}Xs z!$qMxmkB}O#SWT0q2KH-7PG843XX~+&ra6`EA(LSTv!QWij0{=E0O%k5y^`=wI}Cj znte0%T?ZbB;CaKv;IImB|8$DRZGO;62ku2oG2RsO^(2Wy2E5jMOQaWdIBrs{H)Dzi zPq|i35Jh+sv?bsA)^*{$%8Wu>d0I4-L%4+1-IavbiU`8Ed9IF$`~7MY?resXZzf(C zX0;~oiX3~%>{}2nmSx74&AQ*+)ex!Q69CQ+_a{xT=a9uzR_k>6@+)n`8BX7hA&sa1 zN_#JVg1RU}JJKW|WY8S{Q!<99ZM;OuE|L8(T;^FozrKzH%;P^R;Ui8W|ADI`Yd&?n01U`tkci^5&k2cY+^^{ zR9do!75j}Zf*qqdfqbMg#c)wclUODNMQ)SJ9p-x2U|KeB|3?vXOX5(=jpvv8cfdb> z5BOidr=q-qOua#QFK_0@gI$$L#j(px`uY6Rf9}So^MCJuYyMMQ`AhxC{~I^1{7;*Y z{QTeIh3n4^7ZY)niW4rj7c=Iefvy@Z(6Wo@s*mo==S^1jYIt~yrJzLZaN#3v1tN(= zG|DGr^VGf4u{r;s#|RKjkytxTEC^u_WRp0YOz&#bxl3rHJ@b zzq|?LX3XxMhS&+=G#?AQBfsA;oJy@zG;f`I8Uc1fj9xZoX zE5Mk{hr@hBY%*BWL;w}p#uf=>ZGI`Kw;01(4-2MCM3*fS0_T`cefHK|V!!8ib?J** zlm$-f#AWcP3-|@v_k01%f?gXK;<(KZjc9cyAK8=r5sr+>XcNRU7LDmQiAt>bn}2xQ z@9GDMxE#;~)|@~g7waa}VNwi)L2R-g@uVnc^>|U^Qn*N%P|y&2qcv-e(3wrLxT(|& zS`0?7*!cYpKzno@(73eKQ5L4a4!OiwY%~jgVi8(dpgNN2Af+B{Q&M#Th@>n983OAm z3vopRJXG1?J*BKsAgCma5NoZw+<*DIV=`_ix1l6PVG9-PC+bpp(z2*`7xV<#CU>?0 zlD||r0@a`~0`zcP57?RlipwMwzZ!|9&5ZlX1`#c(FLza-y5s%&=}zTE)yGeJXNyqg z6CdT0X*`tZ#PqvaG=NIU)+xh!lyfQpDxp&=!cf{#P3UJQM${RX>$pAD`Dj_j8Ah0> zw;$H!85Zoi8ULU8UA=Cl_)QMsxR-F4@py+%O(gT_b+)b7L)x6i5TYN>2b`DpuNyed zR}iK9=r#2qY;kFABK9_#*i^`$cB9YBGaxRuAq2rmCgcG76hTIXA~@23Fa*f1amC5iBj?|u5@B3TSIx?VorUoKDTQ`f?d+C?RXH*;sr0hIBF zu%(&Uy_!&A;4yD3DZKFo;#LA-&Biq;oklXHm;>=saLy7ezg9?f>?in*k%`hO zjvd8d2NOjJUaw@|5Z}IRN2WIW=L()7_YVO(-u)m>q(iB8B#r zg*9HU-U&KxHF&ee-ke!w#i!nK^x;H|CcrJb8eZJ2+Sf@Y9(cs_2?r2m8zWMX<`d$T zKS=RsW-OABzy=JOt#0NgaJx3d41t9k189f>@l-A^A;JcufQYY_XFo-q$RT&*_*6%> zgf<1I%!T*a)PLC->ri;Srari~jD1ojn}-?G;t0$}lSY%KUdU!neWeUveB`QBdW0M} zJ>yY#6M_NZ35$mEw-1W@-&wV!k^F5 zf_{{Z*XK2Z)`stZHWZR!>_TPO<}*a1wQ);$yuq4ATL&IIK$bp$c={FQkT)i{0i+HfERN)ruF zF(V9xcfcQHQRf6wi+H6;fj_h&q-C#x4+rS+z2F0+BMH01c#m@^DA97c#H<6xC}CF# zAomfxPM}z=h?r5hD&zo87k;LgYgAT&@xee4F^j_tnj@v*grh%zRUOC=g zLmevvQIUB37aHw#^bl2t)rhbm*De>ix~8e881tpDpGnnTdowI2XlO5v=Vy`$Y0#*G zIJnwz(N!V|^s8>xJ)F$VgS@$?C5r)h2(1-PzfHELYlS{n8m&F+xKYM;$(*WUt_rpt z09}dC-4I0rS<((s`W!aZtUD)kt19(5G*cMt42!R}=D<2(Z|6 z3|q04_#LIcmn+K|~)NRX_n5XOL)4TF; zEUZYsG;u=!nU4p~wU4GTZBbJJJNDiJVWsL;YtB4*ocKawNsv&@t!U}un4#vQ8KPqK z7ByqAS3pF_ls~`Rp>)VbGPEAbXhMJ}45G<#mm$`Gm3vTt(ABOey`9iIgv&tFHQZId zWF3{?TX|tyCj-RE=QN6>cf@IK#+sXIG>(KdQ}M98m&ifpduc@x9s}WfphQ?6s4tcu z=iVKLw~sbx0C|J%Smo3s3o&{Qn-)JVIVvtq*_h;^5Qj@rCphIrb@cjrx3kCU)7+nX8d=+`?yPyA>J{So#28>OQI(V9q$REfa>l6q)z}T8^$xI& zMvv{O>m^=4Na_%YyFA3E2gA7?rce7kN}Lt8@2|{f8K_>7VkK%bQb{5e&+Y5_o10)R zne~ilBdl9t@@PqvI$YxrrQt0Tu~s|PbMa=+FUu_%ri;c!2{EoXwQ;zkI9HO3Hi%Q+ z+}0nCO*a%4AVsaXQZ0`6oup#4K-Dmx!iM1LHA?q)5QTII)1D^vtOnOu!#ki3G84kJ zt3!G&MaFvQt4pLVvd&|@3_B>n4ikFU;R$9?)M{TMB;l!3j&~t?kVY6j+3`?zk_}Mz zU7_zY7b{uPoH(}lntKkwr7!jg73R2F{VqYPbW(b?cSs2~e6}(G6==d#YkbEcuHtMA zkry({HmldmdRpB@>OMMq@LA!zn%`U`F*ed4Sv|ib5Xit}_llr}Ax7Wh+iSBj2i5BY z8&=27?0K=P7lJSK$HtVUDAURKM8+FcwECA3MN3;S72#9K zwZiG|KDGNF^}ziCD!dl1SCL0fsj3(pdm{oRgSpoupCsGoC=qh|qujk*B~Bo!QK2eI zHqBho#LGk2Ww8|~P*QEi@OPiC`8cHWe28~MUB+uU2KH5MtB{BSFXB!%l1a0Y>MbmF6bBZ-jlVd|@u1guKIJCZ`6 z?`-+tY(X>DHJ&)mpqlvH1Oz2O4P<^U9f3YC{$9pBaQ$d}_YRQX`1dUk9GV~ez)t6& z&Dlw(t6s9@6KRjJ=(C*mul!>jh|!ys`k#H@^R>5~UVcKWo{LY1@z&Dry|#K`op{=R z5d0ETUMN2bT>meH{{M$&oc|v@|4Y&T(`@XeD>n5VP&<)I>U6lr(!kP0;54%^w)PGn zl2ffr`TUYKz>Ia+C(yP=045<yDIT_Nx6bHKp^D!69l0-S1mXTFzLdPg9>UHmLC% z?){#s(|%24C{xera&@Q1{hB|Qb{hxu7}GRJ?y5bw%CFP7B9mK&q zMrxwXrcmDlQQYyI+HFS*Krd+X@sW1;b$U(1JHHP^v*BEIc~yVdnp6r68~Y5;O};h2 zRMCQsWps>|_cPnObiz?2+%%p}M)*t-`h4O9lZmg=pm2PXXTa4)KqP8_9QUpGkNpvi z&*lmC7x1L&(4F7r>q3Vf8A?A&1C2pbMAh zMC}Q0&bn_&I^~AOx!Zl$X(vpdg(VKJB%9BKUi_55`OT?o@b`7%fDN@ktUCjBo1X{@ z`yXWTrhZ7zs+%a9?2)`b7$a-Uta z=2X7lg<3cRnI&V2e(@{3w%n%Tid^G~>U`mxMIo*aTCBR!`8k+!*IrhY`EfXni&W-) zRlO7)sly>mGMb=jvvku;p46jYHF8{RZQjZChT=1UfOq@G{H0G0JKwAa(f00iu1-2( ze_!U}dump&ZKp@|(u1$?hf$T0LyuEEP5ey$r2W3hDDoxC2fLi zCgEyu;w{Rl(;0lz(ln+#0A!y98J?(l(hy#r+jfT56(Plz`K>*TCLoy3ucAj++QSFD z&2vSzzz<7I*N?HYlJ5S&g1a-a4x2CTONt)BESs6jcccd=25z2IWnC42$?$|vwwH?K zV&qfWkkKX(biBy*_!IxBp+sfct?V7Zbg(!6()9z#HPjZDTs4C_>wPW5N2o$k+y3^^ zsbjFWDp2~2fcm~8KI!JB=o79c5}jS5B7w$&)Wr8O7$cV-)6qF*EF^gs6UFeJ=1yCc zXkqhMpVR8-(WMDf3$hx9m|6-azcX~C$MB%%`+ybxSz_`Fp+Sub4oflGkkTJ{O4ob` zRH1PhSrWHcVH#5Wu$E!EWk~wA&NQq9xwGMK`*L9Pi-EB^N$rv-0)ib?++@KwG^ zYAhf}#u@3E#!YYox8e=MKC$WAc?xYhmd%;{I5PT^DLQ{nzjNAPh}=X~?D$3!eOOju z;cT^#{6G{((>$dd#TyYJo7~CA5~0j=@IIXX@(xg?T&4B!Q%$j!vB0F)1}+iXJ#3G3blzZIrCBxVIEub zw6=J>D8TPLe1y!Uhtv7V^3#n7>4i~en8AviE9QE@1Ea<`*)e5#+?Am6fR-OiUkW7! z%53Iihp>A&z?R(#g!u(WrJY-8x|R0@M`(+Q#C9+P_{o+gsquQpUya(ktxAl9e`R&p zD7~2w6e-+aCmqG3gx!SPOq?>w3a1l2>oG&3SaZ36_sCJR9{jNpVusyN-j*=!!Lehk zb{oBxJ1)0+F)B8U1oh;9<@OuQnNA(Ew6f`!`gRbIoQ8Oa-Q68*Kh463dYv@D;ry{G zlbge^LRy!4HrZ%fe<7-{WRIs=&$oHA<3eiZ;I0i78=w&N733gV4s6sZwApbLV=vjS z%(iB&Bal&c>_QLrrA;`QaltHbTx> zOnFz+$f+z{kIuL#?KF za>wr@dU^*8aWTvpy!g&NTuth9gOJW0f-eBF1gR3kMKG1UDow9`jVZoO45GRY;{w$~tJsBO*>BL8Iiy9FJB&cu?a za`9)%C`D?61xj^jbg`7XUHU4J&hZZpjHZ1?3tDDg+*s-%F)Ce41aahV6;m+aSiN(s z^J~X#a^7bXuz3}`F@)qbg{W$4K2`i>QHLJRAi0Dpoyfj>QJ*sHrmyb+9EEabCNp&| zk9h#uybtJ<)KfL{;nPbbGFgAt)ajYJ>{7#oP7JR8g?LIEZLM&zDNgmIqF+2o-Doh-b!u2ilG zCm>@dRDd;r)K8y4c&IRpgvqz-ucg)Lhl~^_jaD;O;g8rm`jx617t7uP5Zpuhm}JVkbWFgO2o!HK)5e zepB9*df}+h+O?9Og+f}7!{iHFO?j?F$cF-+4K^80&XCn+Xh#2@IK|=3M^09ld@N zJ#JmB-BbZFssNtm3EqI+MA{G`VSyV5Caz2#mIpATC~}7GmvIuj`nqtV|@OM=@{LQmV7s(lX~kZvd(f!KmfNB zm6>2EfM}dA{-o2e5#J{GLUeIU&rflM7&pXyrba!?V!#r#MJJt})gX4L03g7w47_g> zda=XzHGGxks2sd?pX;f`Y28LeJ~R^=lj%N@*@+Hjs4ZvYo9BslQT z*xql+blJWLKcQA`IXxH__EN{oX5gux#3#PqQ4CV?tH5>5KDqCq3Q^aq)_r9mwdb2=TCe8PA0$(?ST`V3K zX8^dlv}*G$U}SI;nBgi*FEm?q8GPn2DkUkKi)Xd1~Z&G^PluVMw~LuQLhjTS|sKE>~(oOOqlrO&}5HZE#UE zi>6jE)muedF0@Z!^+AfO8T?i!wxo(@;Nb>@dBw{vx*jyS|DLSf_A*S%JVqfmZ)(SX zJ^n2c5xPcYJX)mlnHT~K`aN*`9Z&{~ zAg!!z>ADg-=r+BA<7mA0xkW0gtz-h3Y4-42E;Ig+&RW&@{T=)vjV>qrJ~?1x&cP&p5B9cH<>v_K}(N(GocZQQHBsy3fku zO_T)`npxUn$tlzL`a;p$UoTon`8qX`tY)IeY&A}hSZmPtZMk=jHpW)p0fX&}(nL5v z*iKwL*W7xbd9E*btZ=(*t+p7AQ+XZMbP3srgX@WbtD2d;ZD)}y7w4A@m zSNS653!&IxVd|qv2rX(HgnQ)fEWJuh;&l$JcH!b->NB|6yR^oiO!I>3Qj7(Tys=nk z^W8i{%2G?ZIxzNlzf+c18@YaA-U>F-Mmcl2P{_HfKDM&4l^uj&a{B#3tepDbf86+Ci0ak<#Nz4 z(e~x#6gbM_^aRSqm2<|z=$MDvq;=;?{riFS?@MhOTBaGdT+>>vrj8*OyV*ebwd5`w z1zI9OvD?w2x}C4-|KG$%@;>>R;=e?w+00H1F1;pGS;ya$D2J@B7^oxB42gMwPQAfNACUxg6Vh}9i)SlgHpVBXs%4)%4cyHhRpkjz=oieNqX-x10 z7b_GMzD2Am(F0~L)M_^jDbauW)Azj6u!3&jcPcWU%8}A|ivvvn-#|p084BqU+e+m> zbmk>1{sVMb`mqA3f=WgWZk~7$Blmoj7CHPJabP ziZz4$o)&1On4V8+Yqg{gf1rRzbRA#n#!a4G=$0tyBZ zOwmCDEnl1wJX!34C?s79_yaVU7Q#7NAQWE0m;cy3+5)yR%JV{LRO5`rgOaC=*$q?_ zdgUzgz%dk(XlgujyDMD&HTQv&GU2f5A{e=<;T|~h3$vY z7-`Kj?W|Ah0sFFbAy?|H@!+zBNuo%M5fdc**fa0iNx7!jQn5T}B z@&(LTdA-RLS{Pooj^5WZcRO5x%-H%b;vk*+D;~Uh?(4W-M z6F-b(rLww|EQ-;d6MUq)=B|8`5r#MNGYXkegAV+;+W`7$Vr({} z`^k9ZE*22f;9e|;+N~`hWPp!f(I+v8*ITIM;|h^_tS8w7$usY) zv~p^3OR;oav$~MCuG_-tC@qnNI0#`dgabj@8-G3oQ*wEmxZhJA_JE(+zSmMwCU6xxBi~dGc0a&g^6> z{l!8))7A|M0MVl3(W9R9Qd!k8kt_aW$#KyQ%Z|TBP{uQO2ZUgsFrOBHYjuuhs5v)! zVu1D_%{ech(3`+dv5Ld#c7-*dwekBbP zyn?G`AmhEF-(m<6BS|Gwb&IC0xEm37a>ao=Oi*Fl>s5W#*|zAQYR*dr@t0pvmD2~6S{G;evEqPhxl3Q z$tEb^=HiXaZiN-ocpr8`fQJ1?F(Ojh#Z85^5O=ZiZ2c?B;tqV=bhnW(I*UqyKm~qN znQB(HwEbP0kviPD(>T!Su6_+Fsg2Nxr%$XdIra(Jlop zlB$RqHkRapsmuGtQo~+vofovsGfACWua0bR)>BNND6$5w;2211)Z!pZavmHl(Tl&4 z#H>aeyceu&srW7NGT#DJ6LU(_mk?DW<&$U!N~ z$a&vfr5CL%&xL|D!qUyeLLE-K=tM}sjE2R(@PblG!-P<@m-(0zXuFYk@r)-lamU^$ zWS>{^tSi+~-bmZC7qNtqCKiUv%)Sj#>FNCG8lAQJl%C_+pW%XXU=*i58mM&9UqwIf z)pybREc7?K&fRBoeFon|_#T4S=wuFTn7PDJ$NR4H#A3Xff z|Hlmh1N(48cyjI9bBBebGV~3%N>-gLMB{fblwL0>|0nvVs4Lf=?aCkXA>&^v_wU%}`-Puqwc-DH!rmzK(fs~>@ceHHd}Ots z=a+UCeE)oWhKs$!a3Bi{JF&auim&o!ClaStY+3$uH^b^YO}WamE+W<5dEF+x_l3^- zvbIG=zOSxh=wicpF5k5r7!AdbQtQfJ=>Oplf0rfW7X8#~JyZR%_zpliYawvO7*#vo z_R6jxFfo4zoZx!W1&`P`j-A5B5Or0Sz|VcQ_GCkw2(~3s8YTI7-B?1M?YINC!jI1RA#V7 zlcGq%noEyIJvuS;Aw!=PncQR7#SM+%26AYWla5h1r&RnPdI((eMoRYByYv`D-FAY3 zEUpAa6wPg)DVHZ>#NIM%^~(R+6XkWgQg;5vU-0${Hc2$p%x>O%OPL5v zZa4lbQgc!ibU^w&TNkL?N~!>-;hRA_n}QxgQzQq73Yjt73oWQ2ep#EVsdZ}zlxUsl zTQf0b@$)cEE{Y{IYqLP~LTb13Y|RfRNdaQ=8uZ^-MCAKNS|ca77i@KiyY42y+z{wm z)lUw}DAQ@ysAjNS*&bUiiDL5XiAESwinLo&tZHLZ!L+zty3O^aXk}M`ULuKpN2R`5 zSC&-7VN|zg+PA)lg@~(mJfe!<`wN?z(0-+!z>hJGA*Dju*V=HjmKA2qYpHqujZrWJ zA3a9=6rPA+Ch@zl`^J~bO1;tc0a0&MfL3M(plh5U{K5{&QYh1i{tmEknMY}?U#|Wh zllCh_C38U+V7%s%WT7g$wrZUpqv&}JCN%v5+DNOVi>hnwrX02#fVb9loQA<-L-pi} zEro(HgF9pO@yUu*K#f+u#P!&6n4;M&YgUt(fr;QyWsNp!`(tZ=;eF4iKg0!uw|2}; zQ2{NOvO2o88uj_DzzAJVaossO@VvGwrkjDiMY);1v zuc+0mog_(;{(vdmvCz+0+B2)ZK1Y$BbF$)_D~&F)j|WRl7&8X`rk3TCCe5T;(e-+5 zj|*oI|1J3S+8=(k=wj&|5U~NjIKA<8v)|Tt`^)i{4v`=|&ejak=<&2fA_!b|brNDE zBTBHcp&i9CCXzN1O>;Ao!tYTB<_pCd3#4XM;doGL7ssEQbrP~XMs}GX70Xeaq>LS0BrwIy48o`_#wpOSzuQ`%ox_;tMax?P|#)yqh z&@6CK6AFlxuK5afRvJ>G`O2GCqSCvsW1R!Dxsg0wt94$FPL~xF_~4%Gs+#2tctfh$qY8q-49R9~B3))2kIRkiLtD|AUljS0%M1mNAq@cbJ;wOS^ybKXU| zR=L3Gsj5oNDr)(j%6CZI>cTf#x&+@UgoaDki5;jB4t;H`{i#lsh^U^-rNt=Hk|Sf8 z#=;~i3SQeLIq$KVvv`9fPf0CweN7XRPFc^Srj^q*@W&<2>D$r>p%^sMn48(=q-wZ#l4p*Y@6FiG9chQe&VsP3XoE^aUR8BYBe|)a8-+LtmSO8 z?d>N6#|DS4yS>L4V}p%441Zsn*kdFXq~GjEMiIVE_3RC(qEbjCcof~$6@{F|!Ldl) z1SfoLPw=M%C~4EiGT`kGW@A#>u?-_)cph5IT!mXD=luxkUJYd*t(y8j0DnM$zZ^{g zi6LK8!dDJ9>VIRMlsbENfJ?UTE4^q@6$Y%MyVb| z*>O@u5;Q3+@G{13DPTjnJ1^s`jO>Zy$Bz%nM-x3|ykeglhm{^aHaJ9qpQ&j{QC_E} zxqNYfMoX_G!LLbQzTqpF#fqiv=&N5~(@Zg&71kk-&X3BuX&H?X&7G*SDEO!-q*s0P zuPHIoRE(A&DCDZKr2%EM8US{txlhUwISf|j<>Y?f?S;G^>ihoycAA|@y}rWz*8b}L z*ZyDpTFVZtI^-dcEJj3ZgmpMl;oJk`2I2sN1fLlvSa-xo@k@T z;~Z&^$w^&ShhgzkSgSOmN&KIM@mV7pE^KuY@y9Hg*^%B>Q#6WISK=jZKFY@oh}gWI z59&`)xKo&YWJ4Af5n0@@lR`T}y$*(8fI>Ooc%zKS%$Kf2wuX(xrsfT5?$i}}4KxvB z$lNVFZ7&}j6J#36&&N=WENbec?!1?E)X~KwNCW)XxaE;%7P`pFSxAjhhVQwdG~Y`( zj4ovE?~xpdTUG_*3=lUOw6s-d+q-VIjU0@q;%ZE@<+dsand4a_kBU+AXm}R(QYbF# z){&%>x<=npdB+lFRfJf$@Ob=ObZW7W<;M-RB%X$vb*Z8gkditni5aGG1@Q)8=0>@P zw2x<9HV|ntK}ex>MdNFx3JR82wo7fTH?>c=YaNm#l@$=nSvYP7c;k>WTO(~yX?MGQ zXDj@r^%Ax{u1sr=k~l3T>Z)rvt2b|UiI$$OK&?gII~eXp;{#sfQs89hYeXM$ z)><$PktRHo;>?Z633vqd5cEZjw9>&AECJI84jg`Zj96P1I9DOoIL|6Z zWkzPX>ec&n+>$pe@yOV#3mX7N7PLixT1r7*eKn4ikVzvGDKLjCRV!>|yG*p$`vKQl zo$ly&uT8zQ{h$1g?=^s3nlmCn2QZ71`z(rNRkDk3jBDCLMT}t^O{7ha-DCWhg z#}};0z-OvExZ4{VA0a2xJ|0Y*xcO#$bRMZ}kC1V#&2IJvs5|Yb zrku{}57Qq|Pb=5EDpW|~SmcqzN%IxR+qml^A=e?pc`=4zl6j{9!HFEF7|ir&aN#Vc zwV2ax)25C%qL##K`xrC49J*RtDg!+WXI zQk>}8Ja&{!LXe>#4!pBomc+4y?zX#IY5Q%*i83Rab0#t3Xcj1*Fp)yix#o6}Q@jI0 zcJ^z%ivaFqYW#AAVC(+xUAukS-kS;l2EY!Vv;P36{_|f?<3=x(`ELX$zZ7KUV(x27 zqo`{2A9mXR05$E#RPk_UWB#R`l_@3}BN=%(`1r5}4Kn0QKJBui`+b`6FhQ9A05|E6 z50jPTCXiAbP$iEg+CUN|MOgM#6*aX*PVhI3TE`EH%fQOMqboicvQH$E^bxbAy^1>r zywsP+nPKtRUQf$;SuugkGiK#U6nM~|PZmD-7})k&OZ;Jg+d??7h6WaK6!H)V<>AFv zff`s)G;`+7l+hI9{tQBd8k0ka(_e!N%-%aHFObpCoDWsZ>ZRrmR z&mpzUO*CsH&XL`_arOQBmpWy{k|7+tnBDQk4k86X!8{LiO&?I}y}(qR*IDxni$I?* zCX&W2h)bP`94lc2JZ$-Q9=+X0qvGtEIV^c2kh04sX^e>*lERUl#W%W|c;Wel2{Rg1 zB6IOZ7Tz1H)UAJM{{T(>=Dw0(MF*Sl7lTk4CrRJ~?X<8X?brF6GyKe1Jf;>z<(6Jn zlM~ir;=Hk=x^b|G2V&bX+ySqr@%(I_sLkN;<L>RdfqEVw$%PT~0Aqf|B*VB3VVX`xPrY>alm0JdRF|vGw@rZI{ zNM$ToFXcL_|G_rrJQtPehUtrgX@{@Sib&DbWRQUNRkiLdeq^p6)kR*vCB0`-Q zjna^tyyzqEG(E%JzKx2iS*cd4m0AijfGDDe+&BC6w&UOL*Y$qO{+IjReJ76Gk;?vC z!p{>m!agYLE6rPM?H~AS{Mp2hE^~+#tZcC_ z-fCYzH@+?*=?Bh{Um|H?;G-a95tR>c4f%9p?lIxG)P@myKvlvHn>r86`*V)<2TL ziy3qA5Y%MnaXh$^#PVU!>EsUspkUP$xR+j<#?7WiJ~jpv(PzhBQtf}H#)d{n76rz| z#M|YmEVh=em&8gq{C|V-`4D4Dw#Nv?#go)ZB&@u$Wl14Q3RNLeDZO+vV2^B;^%30} zi3h1@*X0A;Ns{UkEnadedqR{^nc%L==^&kdDqF}OpMiq zY{tf!I9!F1Sf>)T$L^-Srg*2!F(0SAj8VlIRE{i^X_2FrmbBRC8)O^Z?dh)sv#r?v zQwiKc(kG~4jT}&Agn}_x-E&s-54|_qn)>U=86#=2Bf`Lh1M{Pk(&OCC87tZcWQ9ey z9VAGo*7)xMier*P7*bW zHRc3zPLW6CBpD@zERt5pmLdrhXcbM)Pxka?@B&P!s{-fcHcWCP5m*aHhYbjg@c}nPEXU&c?{Qh#7Mu) z0|-94UdL#&rI-%tF+ow%n*RW^;@jfF$g{&XX=!3iY2OnQ7H8aJWpJ-#dt55r4y;&; zAd!U{ibR0fD0Tde8*E3g>u=fr0MY*df3Kt>&#J@vjCmpW3q|Rsj(KB<$h!t|o89}h zE@%N39~tK`vm=USklZsf;ehvZM=}g@mkp!@Z@C)qITC?BQSs6w#uej{MC z>e&%wcwAEMp3W4a_b{jey)}T01~jUZsDQUCp}ifNT!{sQiE0#gQ>R@d5Xy1;WB>a2|NRv>@-TFdeoLMgHF=kb|R#Wkz( zLZ-01Fj}Y6GvYd_NTFxrxIbHaxMTtd)xMB?iWoI-d+9VnrW_ z@RwvZG>s(q_?`+GM3PA$d8A9D`DINQ0rzSYM0w)OpER*FQxE;ZDAdU3i5aSCcf)qF zW0M)OSyDbO`Ard|5#xzDCmS=P8Y!u!p_%a`OjHLNXqHwo6Ej98lO`8rQXk=4zwsK! z;I2Ebki%T)k}(>`gjw0+qjkCQ)ZMdf_G`?f0wd$ciLAL!*Us(0Cc}Gay4;KRF20`f zc{a)a0H}VL@!mynj@auyIg<}GEMmNCEmA<6EM?6!xL!9N2;`3{6`LC>7^eYbdR!>p zpv!(a3gnQ2hT7{77EUt(!_0i>aHg_eSX+}FV{Dla&TgOQMkKq6rj@r#=X@uF#l?p% zUnPr$;&F(;rhL9U#horkAgyFTRffQ?N*#Du^07Zk^BMT@$sP}=l2oeWELOylEm+2w z%qmG>HmTcIkVs+d=}+~4?UZ%3hgCgAMMv%+>LHZf^BYio`zdfc!j|@pWH2oZc;Eo= z$t5L1ERJ3R-Q$&aKH_zJOpNw7PluH%r~T0=)?8V5m50jZiFqYf0Tg7f?zqHsYYjst0c%Ih7^r^ZF|eesub_N4!r8Y4D)5;Vt6bZXt@kF zM88S0PYrn%#W!*|9^+!zMPEn%xvFiq?XCwWiwgQ1^Ps@c5&K z2av3J4VJkA{Ct{X`goRbDgM^m>C-xV5sfxBH_h>wrDO{dM}a$(3ZO0)Awvqc5d zv@yvN$0~OL8FIjNBAW2IoFI3-uhlP?@;?j!dd!{(xqd zIIlLRBL%ssS`U9s8Svx`$nr%C5rNc zTsA-&pt&`bqM#X*1{K7_mJ*V`L<9gOMUg{)-j?9Go$pICpJAHfPal~*S@|ajn4m?W$uj&{mj&ZL}ISUT;>YMC( zYwH;x#B7Yk^8OwyJbKzDQ{a6A9Ew%q;SvM3_ie8ok%s=JCGvR*8zL&EM6yFQ!X{Y^ z4kdWXiW)CXKk5yW;WF0_UFMDBkyRcUM;k`%&fvrB*jH0yk13HZB&m-)Sdz4nHbgPT zs}npX_E{n(3R+ zn6b$5EjZ-4K|6c>+WJeC@nd9s+(03#PZl%>8d$O(LWn|2<%$h~w^2vq^Cw51b9Xhq zq9l}qY;v-K*P3m6EPm~MB)GV~uj)9l{O&l%o)hVWen%1)b_1tHPcIn9FGIyb1+LPvx@_BD|H1aPj}m{b08d$JY-DO zS5|7Cu|iDf;#nPRN*P4C=L zR<+W&m`cWCXITlkL($dH56Ek`w^(_zK7XdkPB`*oOUw>U(F6mmFARpY2k#oiSB~X; z=RoBq$ANMQt&%G>V311JcXue%FpN}zyo7pM1BQ?Bu z6A5zhFjx6`-Oa1p49XDYe81uL58b1ak>XjSm(9hUm*uCzoo6mqNO7^#J)vx5^$1y; zxtXn9w%68Ksg=v);QE)wiEf~IlPAk!l$M`jIIm58dHfz|e2xxOMpisjj~WJLCjSl&A^<&XS8Lf)S? z=l)-jHmSCN{_I~>HWqBTUONcz;b-$hg^4$hjq%_)F zJa?6Bj1-s=ltxmW-?r=E+lE-&CZ&9h^>i{ZFm*9Opz>E5P=^m3WIlbYpi#b zv7pL^%tXfZ5lbZ87|S%WxhvKOk}C!s4A>C_Jh8>j6S2%GS30W81pQfE0qZFm9eBs)b6BLeMjP?o*1hn zjB)|yfX1Z(lBf;tq*jWx`+fNyEmRW>sVo^$0Yzd=WID37W34wNblX`+Cj5~Z;OBV? znDTE3BnatQprw02xPjA9Vr5Oqiu`R0Ljq)C$(x-aE{Agm~!AvRBIB(=ys`XODoHXj+kp7 zj^V2;nUcwwD>7reW1XYot;gc6J^J99CX_xtGeje?Ro)~dh>}XwBBhVe@3#8#3y_L0 z7}K0~X+}81$HB?Uk)x8^qsdH|!l>wZPTKN97+!B0k;aZ8dHI3k5_gbIV-itKznflr z9vfm@Zz~#Ra`9wN%OtA>Yr6zTlAW}rHZ|6F>M~MXNU^6`u-}ZulG9AGI@)clLDWzh zh1;&apXAM&KO(uzCCMS@!^OkKS#mPvM2Q}*VuyY|m|awZO6$l<8ei4n&Ggs=&coCu zUU#YHco`hX$&DKestsnQri3X&h1kmWkGmMO)Fp06lk2?OElr^(NA=%JLEm(&>Mcbz0v9}79OPXRp?K3Z0^!?fq%Gq{G(K+FyCHVsg(O&09Bc@dX>qX3 zO?r{qlGEE=$R}QN3S9m)!SeVyG1noJ$ry9gL6I^~1TT)Ym*bK~ycDqo3D?$m6G?1d zOUn4X83Yn?G-LH_2j+>XQ(~c~yI)lOH{mgPymRJwmBh|Wu3U^q@xn(%^(^wl;(l<( zLTGgHtIIE^NHUm2Ib$)tV4X~*kbxX70Xx*)rt&y-&B~f#m6GtJvBQTtT`MBW&sC3< zn!5r8I)F6;%Oi6yZbZt_*%GVLctTWmGm5U;sjYS87bhNe$!`=eu%!~TXVm3KlPZ@R z>?6dt;i8T8^#a4m={*FwH)3T8BWaH#$W>Cc4#+BvQa;^%TjS$wr8)U-!bDkRrE*qD z#HrRW(RS3(ZT9OfNbP}Ou3T-EJQD|avay;>kJAmYZN*viSC#LzKZ{Ng?%8wqzk<6u6JSQb#mdS1j_0otl%%yKvR^YZ>tv6(;<2m8+539gT~4 zs~ft1YgtfdC|qcWl_DE7O~w*2$YUJf#FV2R>gp)4p>|eWoTh0AA2!%am2ZmJmZshM z*I2%ycv2>oB*l>={{YNr&P}pLz#5qG+wUZ8son-(;^W1LXGISnR+jm`YY|~?&^Brx zvr3MW<)n_)g=I1o3MGM{`3QQnJMXgf*d|iuS72V}17|08iVm zM?a6q4NSOH&vf{?5U$_JS@QY2mj3{^-K>Pi$3%w*ia$=S)H1=$%&Zx$S4JQmo2OlR zk4*gE`hwq2U-mieuTDDcUY^~5n0Yx;oNRXbqs3tv!$aF#`O~|Q+P?)i_Gx@4tmn$b z%aO3WvtQ$X#YTqAhMk@sY)KXIz$l zc%hJ65|i3ReTQC0HL_D8XuhHFew{9`O^*kY!4ERyu)0pi-(Oi_c+`q46Xr7AA%`E4 zaPOay5g!_SE|B8ECLFQX4HR1$l7isg^X#s?goi7~;^t;H zK1Mb)u(fic4yyE<8C~I?<~_8ufm-V`$DvYiKA}95Ni8CZDH23T@r=Ydvf?Rk{ z9yTN?BAA!8kHp%?!;UDU!o^AQa3+X9Ags-7ys_0=hL*1T5;ZC3nVvM%SqBJ()T<`{-cnU=~jK2_Gh%MB25GWLe4KFVmWK6LTQxo;R}0TTfZI;+Quk%sJ@ ziEzqIE3EGkiII&rn0HY4?B-mYh-_};cH5FB9m2N*vuo0Dj&Ij}2M0WtUHWGomsYp( zep>YWb@k>fJ~&G}{{UKe{Jcy&ybOur&c+@>aB>qFBIV11I9xk20ta0}%kENVwjglo+(@EOoAm(DMf zlMj#1%fwM7CAv9rAe@mAa+fLGYAj4oru@88dMVP3#R;rDS=HGt2dcouT>m#JiG7KEc;O(^o z#Ts(=DWyLhWBG3-;=F=4jq!eCI~GizADI)MCyC>-{{TUa8KPgDGX!J~w`<7$vjFk< zPl=MFGs!%-7_xKE9FiYhGzgh9?NB|Z+pnv~=>A}1`N({ZEFd}}$fM2Oqdv}^wW^FL63{BI-w0PAa){{TzznDQ&l91*i)y^%)J#2RdYFLkLA z{I>gdsMcOAUO&tj-E0OtIkIAHtq0XvAYiC<35ydgP^waFd_0$tV|uiR=(Vw{`AsSB z)^g1TT=-H$CmdN=l1TWO5=g5fV&g-{JKGT?TXjdA5n%%mx07Qq8t45y{<->v zmwI_=f9V`wsae*S?OIarWp)4B00;pA0|7rF45xT5qtS9B`QPUU-Q2|07r?kTnh+Ul ze1eoB>kkQH8WcOg4}+Bd0G(o{ z=Q%wONwl`i0oX5XSv~QZ0m}pLtW{$nu|=Uq(~hwKrE3lGvIO&$ai{_taQ&AK?sms^uC$G^pW+p@9BZ<6^@sl6ri8%f`$^4&BIcIb` z;8NX%A++6cBL{>o3#9GwgaaC!Nhn@l?QyQVPl=&*P^-!WqavEqAf+cY~lI+1}E3opV2w}v;K9CKA#_Gd(fee>+e{;+A+U2^(8q*Vj4l{r><&$&<%7>SOfd6DBx} z`uX|C`F&jcKb-#8?SiBRNeh9nwHvc=$QEcMDuY%<=J1MjYJw$%iCh;N3uuYpF}0!x z)eW2DdLDo8xDEIcZSJPPESoA@uS0`kNXRR5c2hiUXEaPn1HG(!d+f zU|4NKZxOVa+eVxgfHV$^njEvNs6rKM4uyFk;M>vtW|#bajlTKep4{SoiOx@1^!_tP z^i2A7k4$mpJin}#_2`5hXQf^$$4)y3Vj5Isq!6EJAa!*PZ=TT7+$yRX5XeZkaY};k zWcRxg&k$`kLPGL!%pN;A``dv^j}_9k3b<7d4P%`5QV>b_RC9)&z<}cy+!i&WJm^pf zrMNzGrISo0Zc0cTxYATR4$%VSf3jx|ILY<(^PdmYOqo36kB0Fl{L16>KTqc-eSdj? zk{#DJ`r+3KCNGo6zN+!|)-l$N9x|RcuqKz4UOT?6AtYUiNiTb*g6>A7Aw&pH=8!r{ zH9%m9%eYIr3;zIwnHZk2KS$G8;%45yzt(wiiTmS;{P^Jk+#3>>1lpqJ)ABxgh92-E zq_CKh7tIe8MM!y6qq%Bg9|KrQw{5%{dWESKAyC^&1aMCqjAOzD)hIBAiX{~^(2OLO zxgrb*pgmHe`ETlnMcuCiq+5J5u&s)~GEWcBlcKyV)H7z&Ap0Vg@ZRzp~n zXShP@i&Cj=?4cG@h6h%Z259tCuHO=sDN91Q6Qq#D@!{S)**P3P0BoH9vwgl)5;kmv)q%d`s}J81!ktZsky)a^A{ z^hB(JHxX%q>r6T^K&I(5s^I`*T!eQ6q8@F&ic-WC4IKF-14kW82~vN-*lHVz+`tRH zIEW3iRjG6#!c|13o26)N(u$#kLr920PSNSpF|r^nP#}i`H`KLeudI5-33}A?JuN<_ zJldCz2<_pwcMropADn+ebBX#UO#HF^4xg_a-q=R zszi+2RKw<6+UIp#m9S)o<4x{P3JaU7n#X;*F4q{u4O9={P>9eNvR#4R+I6*tATkSR zBVbiRJJzs)WGQIi1(b%RWtT8TsA1!1uVy3}logjC;nC8QS9}DJi7D>|8)M~OEh~)Z z&cOl^+9^CFc}9mlp@{FuJU1EZ-ffOQ+w?#956kpDwVTbYn>$Sd7qaw3jGEQ95HyZc zNyFfXjS#F_&c_(G74+r16l^;ID2m^I5|NFg7-urh66_kPmiUY{eBLx)UUfpu7fXvN zx4@`pPK+xj$f3BN>hysMq+>PeJV#seK_Y;ud0gcPtQ~Z1_ypH^ORj?=NFZN7K}d?N zCM^oBlt8BrhDBAwoC#7+?9UdR-~@m~fhZu)ldf(pL;#1AWY)B2Jo-H6@ckaff2KdP zD+j8dsfIEHXa}M^8&4Rg?2(Y5G_ekZ#ri4@au;@~>T3+XQWVuO${T&IF5k=w3s!EE z078;3jyr7*@?kj;IKyfY3oytHI6-=h0}phlc}Lvg$o~K_*+M(u&6ygD{{XiD(Y7dN z>QE(f5{=*|1FGE1R!IWejG?k5kj#v2ppcjPmhSILlhEO7}8jn$}FAnt;YVRu` zE2F;FD!1OSE_xAtld9&6iyDuM(gv;aM0hxHMkyC2X@jps~%pS~?XKt+%Q zIklcJVyyg&V!FcK%|4mqz;{WkGb-A%D+3CQDSix5i)I4P&mkBLRxNmYn$NSTB;p1` zvV?@m%T}+AHbadHeUlGuib59If+*EnbKZ-4 z;bnb~3NT|azRqBIRnNOlN5+uh8c64{si0J*n?wvg$lB~72+~+{iQjzw`^WyV`gNZV z)N?=I*N@Qtg#Q2rNr+E1z*iO;{iIE|kU^q`)nfsJ44kt9F(?i)-qzltTVb$xYBTE3 z^-@&;t#%ty2&+89{olXK`Fj^%>JQA$w zGG}0Si;;LDe5XU7F0PzBbMg8)eY5yy!#r|nI;NY-BgyCqazc62Oi;w-5 zC!%IO291|_B3TxyELDyU1ZlcmXL#5K}!z8lwn?e%g8_f@@}`m4b;{#tB6d&M6Dwmx!I>gx`rt zvMO}l8KDnx&FxvJ7g$2uakCi~)M8T9)I)T(^eIAmgaXpjRE5!7dKP46p*q7FXp62lsdm@{R~CXu zog2*zqSluj^Lz9@Wvb@6X5|jcLt!~qtYG2L@;C^5TwF?ODYNL6mW@%NJp-4fKc3li zIYi|XHBF^tx)lqDoam=cna4cihaI!)?>?Viar?3K*1o6ccF4)c>;C{5N^*`)*+w5R zr9oKrR}(R|hOWp&cMZ86p*bcorsBj&6PyXs)4A*E2&ZFAB!feaEQ73LDvy=eVzQiX zF~nfB5V!@}+{3g$LDR^%wHoa;YPlVv1H+Z2Trhe-nGI&5j)a}urOCh-6U`o&4$@l#*orFCR^e4BW;p+Uq7v1 zqwDs{*XQ&++h;?uxzgkL>-Wu}!%=>5Iu!iw}T z=*6?~a|aX*M8;or5K7z%q|@S&kg+yTxlE_Y=N7D2QHxTb7` z4;sKUh&wYvlD`biidIO-7=<|91L;?R zXDc|^oE=#_#%%9}B3a8?2pAwR`_y|o8`iFB05H+^*Umne{oa31$NXh|mT%ATaj8!S z0rrVJj#6qu=zCB{;K|ymplHajHz8S#PTYt9kz(mZ5a%oUT^fikU55q6eR0QV_#d#s zlr!Cclh`P2WpGRNw<;`CQLVX4nmqv2pac)3VWCxm<4{uoc4FrZ51JuaHsTeoZ|3D~ zzB)sqXyn4z@()qFMLdTj4HjD*{)ccmy!kRfQrp{YmTdWzba##kRB8zALC4kChZ+I)c$?X@}Z*mxC2lgtQ3tC@^dHf82GkpvYk z#2sNs!)E@xJXCEcAXKEl$Otu5j zCZVDTt{INmNxCVKO56&Q9Il$9+oItihh}p2{!&OB>+&qbZ72^VNipLu zTz^2xw)cmeOmHGxp`;218zx>RIYI4IjyB*MY!7x=d*MUIehk0w=)j8NG!kea{V4-( zF;22v#?L21+~F=?ZpMr=lpu&PES5X3Vh<>BhqcO8U%#Ot19C4YY(!a&Ct!?72w6g= zMfS+Uvj3hT?-ZaJf*wfgCG(zRIIrxp#VCF z3uQ68X`pV5EHB1*I(Y1oE4^AZtasvJ9Rsz(Ix=XvUR$AA45%m&A*`2F#)jg3es8TZ zC`jmX$joVobrk_d@#BFZSexPG86>Kxt@5qLnO zdxc&svau+2ghi$<5zZ9Y;|ktMc${snZ0KJk1?8Sa~9$Wx^E; z;&$-B@W#8eY2n6Kc|8ilqbA7M7NzOryK@0#_R)B=?7!mDc@LOjJK^|6WhZ@6UU1`f zF&Yp<6Nku&XGN(~T>k)4u*H8u6IiE`M||XMa;3rnn?rOn&D6zK5nH!;Vd7p{Prr&d zN*F>n^5GWShNY^QbI7Eu4(Iy#9Dfs(je@8^9PKe6El3uw0!1@7Mg|wciDM_g@4zUh zlRDQ{q^NFz$(?{2x*;sNXWSG?{osgDTY*re0=yNK@EBDXR01-1d5QtW`mp5co{_DW z3gfvX8%f=fDXKZ7_`<3t{ zLgxPX?1(b!lj76jObYl!T*{BHAgA(BRS(mhWw}59+5iXv0s{d*A!;Z9f~mD#tF_IT z7BIfkJ7R(Z;fd?s`OP3+-RGab4EFlp{5>eu_&-(Wm*u81w;J+k{T{Ow@5IJp-i#Q( z_*xw>+kT5z^kCuq5oWB;)#1&sTO;>VkxU_zYKF_FeCw@bDJS!C2hV-s#lx5NyU(2G zI?XO_<&Uhb%d96DbjveIn)~7JFL}q#U(g$1K%$2M-_8-%%653f>@{Jvyd50b1cYk! z({FwL*iGk;O?k!eY5Bz!vZ36|j<<*JpBYzK{NUx)%0D^0zH<1(&UG^P`V{XDna3FC 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 Knw|XN#Qy*?L6IH+ literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/trees_crab.jpg b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/trees_crab.jpg new file mode 100755 index 0000000000000000000000000000000000000000..d1b6e5b0eef5e52f2062397cd1386481e7c55553 GIT binary patch literal 57062 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௼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 DZw3k4 literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/trees_maple.jpg b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/trees_maple.jpg new file mode 100755 index 0000000000000000000000000000000000000000..36a9b6084a70f6d0d5fd0cf380eb8587e9a0fdd4 GIT binary patch literal 73634 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

    Xrku3H#i z1x;o3N>4<|QK|qtbsCt|i?yqj9wk5=z^Bkp33D8xI=HR6)0i{4uo|p*xRFqIJrQLe zK!Q9^u~w(r#7I&2j@eYdWBVV=b5R`))=$D`cE%fA(*ZDLR_IxL{K{Bv7=zRc9G)Tx zEw1BdcPdcx1TO^j9Dg}#Z%f${%fT;Im)w38F$%5)tH8cutT~9P^C`~L_iV)D{&|nB z6J#23F7=YUrvh|Kq!AQADS(HqO?;s;2p?8^d?V>`Q3Gt^nsM_hM=6f*i9&`42MlkS zxv|R)kN`5yA|+&~Q;uO|y#+;^MqAuAXos-{F&dYMJo1FN9TBg|g2NK~vTgmSuLy&2 z(OTZ)@MdK~Zoe==il@&qtr1U^DCXE#>G1`wAvkD?g}dTb*%-0AfcY7g0BTwrJ#{V( z!%^y&9jAaJhwDP+xA_#Aj3?eP${oF!oFJXxFqZJBKAHBE2ZSY}*1jQYTey7l?Fpl} zr3K|O`H24jn?~1AsB4FqD=1R3u3YCb&9nk$2qo&lHxfz0%SUh!|3U~Y(DbN)=LYyK-GP+>HgnOm3HnU`O71?pcAvid|R zoC`?a76jH~hi7ksblPv;?*YkQT|gW^xvNus( zrXz|P@5CPwg5z213b>ks1z7FUQr2BeObt-W)FO#pKzNQxP4LXPe43t=z(xHiG&9_F z5d?-_nKll!0fi-Qs!Ba$3|50L<_VhJ$Ncn(xpYe^cr<#Wsx3m%FSn5J*!YUuZ4-bm&ciqyxa

    @=YF`^a3MqB&~-mxF$j1yZ7PWe)eu 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 VsZ=Eg!QAy+yjR-C=QeDDF#fcXxNYe1G@7_x<-y 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§ho2_1)My@dp->OK`pYsas4ta` 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 literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/veggies_onion.jpg b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/veggies_onion.jpg new file mode 100755 index 0000000000000000000000000000000000000000..bc4371ad46d8dc4d630981d05ddcc949881186d1 GIT binary patch literal 47542 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�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 literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/veggies_strawberries.jpg b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/veggies_strawberries.jpg new file mode 100755 index 0000000000000000000000000000000000000000..2dc8778905bf5d8209f921c767df432aef90721c GIT binary patch literal 85045 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

    @ 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 Kue0m;&;Qw=#L}ez literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/veggies_strawberries_48.jpg b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/veggies_strawberries_48.jpg new file mode 100755 index 0000000000000000000000000000000000000000..fed000e0526a7818615e491ebb5ba503f3feea88 GIT binary patch literal 4902 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[=8{HDA~r&-gzew-v}7~i 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⁢2VU2`T)4oG^4V>74J_`BjvcL_;iegT4)8`K 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 + + + + + + + + + + + + + + + + +
    +

    + +

    +
    + + + + + +
    +

    + +

    +

    Page + 1 of 1

    +
    + + + + + + + +
    +

    + + + +

    +
    + + + + + + + + +
     

    Page + 1 of 1

    + + + + +
    +
    + + + + \ No newline at end of file diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/supplierconfig.jsp b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/supplierconfig.jsp new file mode 100755 index 00000000..3ee5ee6b --- /dev/null +++ b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/supplierconfig.jsp @@ -0,0 +1,291 @@ + + + + +<%@ page language="java" contentType="text/html; charset=ISO-8859-1" + pageEncoding="ISO-8859-1"%> + + + + +Supplier Configuration + + + + + + + + + <%@page + import="com.ibm.websphere.samples.pbw.jpa.Supplier,,com.ibm.websphere.samples.pbw.utils.Util,java.util.*" + session="true" isThreadSafe="true" isErrorPage="false"%> + <% + com.ibm.websphere.samples.pbw.jpa.Supplier supplierInfo = (com.ibm.websphere.samples.pbw.jpa.Supplier) session + .getAttribute(com.ibm.websphere.samples.pbw.utils.Util.ATTR_SUPPLIER); + String id = ""; + String name = ""; + String street = ""; + String city = ""; + String state = ""; + String zip = ""; + String phone = ""; + String url = ""; + if (supplierInfo != null) { + id = supplierInfo.getSupplierID(); + name = supplierInfo.getName(); + street = supplierInfo.getStreet(); + city = supplierInfo.getCity(); + state = supplierInfo.getUsstate(); + zip = supplierInfo.getZip(); + phone = supplierInfo.getPhone(); + url = supplierInfo.getUrl(); + } + %> + + + + + + + + + + +
    +

    + Admin + Home +

    +
    + + + + + + + + +
    +

    Supplier Configuration

    +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Enter the Supplier's Configuration Information
    +

    + +

    +
    +

    + +

    +
    +

    + +

    +
    +

    + +

    +
    +

    + +

    +
    +

    + +

    +
    +

    + +

    +
    +

    + +

    +
    +

    + +

    +
    +

    + +

    +
    +

    + +

    +
    +

    + +

    +
    +

    + +

    +
    +

    + +

    +
    + +
    +
    + + + + + + +
    +

    +
    +

    + + + + + + + +
    Powered by WebSphere + +
    + + diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/theme/stylesheet.css b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/theme/stylesheet.css new file mode 100755 index 00000000..fb54e566 --- /dev/null +++ b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/theme/stylesheet.css @@ -0,0 +1,187 @@ +/* + * COPYRIGHT LICENSE: This information contains sample code provided in source code form. You may copy, + * modify, and distribute these sample programs in any form without payment to IBM for the purposes of + * developing, using, marketing or distributing application programs conforming to the application + * programming interface for the operating platform for which the sample code is written. + * Notwithstanding anything to the contrary, IBM PROVIDES THE SAMPLE SOURCE CODE ON AN "AS IS" BASIS + * AND IBM DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, ANY IMPLIED + * WARRANTIES OR CONDITIONS OF MERCHANTABILITY, SATISFACTORY QUALITY, FITNESS FOR A PARTICULAR PURPOSE, + * TITLE, AND ANY WARRANTY OR CONDITION OF NON-INFRINGEMENT. IBM SHALL NOT BE LIABLE FOR ANY DIRECT, + * INDIRECT, INCIDENTAL, SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR OPERATION OF THE + * SAMPLE SOURCE CODE. IBM HAS NO OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS + * OR MODIFICATIONS TO THE SAMPLE SOURCE CODE. + * + * (C) COPYRIGHT International Business Machines Corp., 2000,2011 + * All Rights Reserved * Licensed Materials - Property of IBM + */ + + /******************************** + * Faces Components Stylesheet * + ********************************/ + +.form { +} + +.commandLink { +} + +.outputLink { +} + +.link { +} + +.graphicImage { +} + +.outputLabel { +} + +.inputText { +} + +.inputText_Error { + border-style: solid; + border-color: #DE5C5C; +} + +.inputTextarea { +} + +.inputSecret { +} + +.inputHidden { +} + +.outputText { +} + +.outputFormat { +} + +.commandButton { +} + +.button { +} + +.message { +} + +.messages { +} + +.selectBooleanCheckbox { +} + +.selectBooleanCheckbox_Error { +} + +.selectOneRadio { +} + +.selectOneRadio_Error { +} + +.selectOneRadio_Disabled { + color: GrayText; +} + +.selectManyCheckbox { +} + +.selectManyCheckbox_Error { +} + +.selectManyCheckbox_Disabled { + color: GrayText; +} + +.selectOneListbox { +} + +.selectOneListbox_Error { +} + +.selectManyListbox { +} + +.selectManyListbox_Error { +} + +.selectOneMenu { +} + +.selectOneMenu_Error { +} + +.selectManyMenu { +} + +.selectManyMenu_Error { +} + +.panelGroup { +} + +.panelGrid { +} + +.dataTable { + empty-cells:show; +} + +.headerClass { + background-color: ThreeDFace; + color: WindowText; + border-width: 1px; + border-style: solid; + border-color: ThreeDShadow; + margin:2px; + padding:0px; + padding-left:4pt; + padding-right:4pt; + padding-bottom:2px; + font-weight: 400; + overflow: -moz-scrollbars-none; +} + +.footerClass { + background-color: ThreeDFace; + color: WindowText; + border-width: 0px; + border-style: none; + padding:0px; + padding-left:4pt; + padding-right:4pt; + font-weight: 400; + overflow: -moz-scrollbars-none; +} + +.rowClass1 { + background-color: window; +} + +.rowClass2 { + background-color: ThreeDFace; +} + +.columnClass1 { + background-color: window; + margin:2px; + padding:0px; + padding-left:4pt; + padding-right:4pt; + padding-bottom:2px; + overflow: -moz-scrollbars-none; +} + +.columnClass2 { + background-color: ThreeDFace; + margin:2px; + padding:0px; + padding-left:4pt; + padding-right:4pt; + padding-bottom:2px; +} diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/viewExpired.xhtml b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/viewExpired.xhtml new file mode 100755 index 00000000..8cb4cec3 --- /dev/null +++ b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/viewExpired.xhtml @@ -0,0 +1,35 @@ + + + + + + + + + + Your shopping session has expired due to inactivity. Your shopping cart and all items in it has been lost. You may continue + to shop. Any new items placed in your shopping cart will be remembered. + + + \ No newline at end of file From c1d98240ede4165368e9d1a77bb731f78f472cb9 Mon Sep 17 00:00:00 2001 From: Rahul Krishna Date: Fri, 7 Feb 2025 22:04:29 -0500 Subject: [PATCH 02/12] Fix issue #107. Class file filtering now only excludes classes in the test and/or resources folder only within project directory. Signed-off-by: Rahul Krishna --- src/main/java/com/ibm/cldk/SymbolTable.java | 80 ++++++++++++++++++- .../ibm/cldk/analysis/CRUDFinderFactory.java | 34 ++++++++ .../analysis/EntrypointsFinderFactory.java | 33 ++++++++ .../analysis/camel/CamelEntrypointFinder.java | 17 ++++ .../interfaces/AbstractCRUDFinder.java | 20 +++++ .../interfaces/AbstractEntrypointFinder.java | 23 ++++++ .../cldk/analysis/jakarta/JPACRUDFinder.java | 73 +++++++++++++++++ .../jakarta/JakartaEntrypointFinder.java | 17 ++++ .../cldk/analysis/jdbc/JDBCCRUDFinder.java | 73 +++++++++++++++++ .../analysis/spring/SpringCRUDFinder.java | 73 +++++++++++++++++ .../spring/SpringEntrypointFinder.java | 17 ++++ .../struts/StrutsEntrypointFinder.java | 15 ++++ .../utils/enums/CRUDOperationType.java | 8 ++ .../analysis/utils/enums/CRUDQueryType.java | 6 ++ .../com/ibm/cldk/entities/CRUDOperation.java | 24 +++--- .../java/com/ibm/cldk/entities/CRUDQuery.java | 15 ++++ .../java/com/ibm/cldk/entities/CallSite.java | 3 +- .../cldk/utils/ProjectDirectoryScanner.java | 11 ++- .../utils/annotations/NotImplemented.java | 3 +- 19 files changed, 519 insertions(+), 26 deletions(-) create mode 100644 src/main/java/com/ibm/cldk/analysis/CRUDFinderFactory.java create mode 100644 src/main/java/com/ibm/cldk/analysis/EntrypointsFinderFactory.java create mode 100644 src/main/java/com/ibm/cldk/analysis/camel/CamelEntrypointFinder.java create mode 100644 src/main/java/com/ibm/cldk/analysis/interfaces/AbstractCRUDFinder.java create mode 100644 src/main/java/com/ibm/cldk/analysis/interfaces/AbstractEntrypointFinder.java create mode 100644 src/main/java/com/ibm/cldk/analysis/jakarta/JPACRUDFinder.java create mode 100644 src/main/java/com/ibm/cldk/analysis/jakarta/JakartaEntrypointFinder.java create mode 100644 src/main/java/com/ibm/cldk/analysis/jdbc/JDBCCRUDFinder.java create mode 100644 src/main/java/com/ibm/cldk/analysis/spring/SpringCRUDFinder.java create mode 100644 src/main/java/com/ibm/cldk/analysis/spring/SpringEntrypointFinder.java create mode 100644 src/main/java/com/ibm/cldk/analysis/struts/StrutsEntrypointFinder.java create mode 100644 src/main/java/com/ibm/cldk/analysis/utils/enums/CRUDOperationType.java create mode 100644 src/main/java/com/ibm/cldk/analysis/utils/enums/CRUDQueryType.java create mode 100644 src/main/java/com/ibm/cldk/entities/CRUDQuery.java diff --git a/src/main/java/com/ibm/cldk/SymbolTable.java b/src/main/java/com/ibm/cldk/SymbolTable.java index e700f375..cc72adb6 100644 --- a/src/main/java/com/ibm/cldk/SymbolTable.java +++ b/src/main/java/com/ibm/cldk/SymbolTable.java @@ -27,6 +27,10 @@ import com.github.javaparser.utils.SourceRoot; import com.google.common.collect.Table; import com.google.common.collect.Tables; +import com.ibm.cldk.analysis.CRUDFinderFactory; +import com.ibm.cldk.analysis.interfaces.AbstractCRUDFinder; +import com.ibm.cldk.analysis.utils.enums.CRUDOperationType; +import com.ibm.cldk.analysis.utils.enums.CRUDQueryType; import com.ibm.cldk.entities.*; import com.ibm.cldk.utils.Log; import org.apache.commons.lang3.tuple.Pair; @@ -420,16 +424,19 @@ private static boolean isEntryPointMethod(CallableDeclaration callableDecl) { return isServletEntrypointMethod(callableDecl) || isJaxRsEntrypointMethod(callableDecl) || isSpringEntrypointMethod(callableDecl) | isStrutsEntryPointMethod(callableDecl); } + @SuppressWarnings("unchecked") private static boolean isServletEntrypointMethod(CallableDeclaration callableDecl) { return ((NodeList) callableDecl.getParameters()).stream() .anyMatch(parameter -> parameter.getType().asString().contains("HttpServletRequest") || parameter.getType().asString().contains("HttpServletResponse")); } + @SuppressWarnings("unchecked") private static boolean isJaxRsEntrypointMethod(CallableDeclaration callableDecl) { return callableDecl.getAnnotations().stream().anyMatch(a -> a.toString().contains("POST") || a.toString().contains("PUT") || a.toString().contains("GET") || a.toString().contains("HEAD") || a.toString().contains("DELETE")); } + @SuppressWarnings("unchecked") private static boolean isSpringEntrypointMethod(CallableDeclaration callableDecl) { return callableDecl.getAnnotations().stream().anyMatch(a -> a.toString().contains("GetMapping") || @@ -455,10 +462,11 @@ private static boolean isSpringEntrypointMethod(CallableDeclaration callableDecl ); } + @SuppressWarnings("unchecked") private static boolean isStrutsEntryPointMethod(CallableDeclaration callableDecl) { // First check if this method is in a Struts Action class Optional parentNode = callableDecl.getParentNode(); - if (!parentNode.isPresent() || !(parentNode.get() instanceof ClassOrInterfaceDeclaration)) { + if (parentNode.isEmpty() || !(parentNode.get() instanceof ClassOrInterfaceDeclaration)) { return false; } @@ -631,6 +639,7 @@ private static List getAccessedFields(Optional callableBody, * @param callableBody callable to compute call-site information for * @return list of call sites */ + @SuppressWarnings({"OptionalUsedAsFieldOrParameterType"}) private static List getCallSites(Optional callableBody) { List callSites = new ArrayList<>(); if (callableBody.isEmpty()) { @@ -680,8 +689,20 @@ private static List getCallSites(Optional callableBody) { } // resolve arguments of the method call to types List arguments = methodCallExpr.getArguments().stream().map(SymbolTable::resolveExpression).collect(Collectors.toList()); + + // Determine if this call site is potentially a CRUD operation. + CRUDOperation crudOperation = null; + Optional crudOperationType = findCRUDOperation(declaringType, methodCallExpr.getNameAsString()); + if (crudOperationType.isPresent()) { + // We found a CRUD operation, so we need to populate the details of the call site this CRUD operation. + int lineNumber = methodCallExpr.getRange().isPresent() ? methodCallExpr.getRange().get().begin.line : -1; + crudOperation = new CRUDOperation(lineNumber, crudOperationType.get()); + } + // Determine if this call site is potentially a CRUD query. + CRUDQuery crudQuery = null; + Optional crudQueryType = findCRUDQuery(declaringType, methodCallExpr.getNameAsString()); // add a new call site object - callSites.add(createCallSite(methodCallExpr, methodCallExpr.getNameAsString(), receiverName, declaringType, arguments, returnType, calleeSignature, isStaticCall, false, accessSpecifier)); + callSites.add(createCallSite(methodCallExpr, methodCallExpr.getNameAsString(), receiverName, declaringType, arguments, returnType, calleeSignature, isStaticCall, false, crudOperation, crudQuery, accessSpecifier)); } for (ObjectCreationExpr objectCreationExpr : callableBody.get().findAll(ObjectCreationExpr.class)) { @@ -700,12 +721,50 @@ private static List getCallSites(Optional callableBody) { } // add a new call site object - callSites.add(createCallSite(objectCreationExpr, "", objectCreationExpr.getScope().isPresent() ? objectCreationExpr.getScope().get().toString() : "", instantiatedType, arguments, instantiatedType, calleeSignature, false, true, AccessSpecifier.NONE)); + callSites.add(createCallSite(objectCreationExpr, "", objectCreationExpr.getScope().isPresent() ? objectCreationExpr.getScope().get().toString() : "", instantiatedType, arguments, instantiatedType, calleeSignature, false, true, null, null, AccessSpecifier.NONE)); } return callSites; } + private static Optional findCRUDQuery(String declaringType, String nameAsString) { + return CRUDFinderFactory.getCRUDFinders().map( + finder -> { + if (finder.isReadQuery(declaringType, nameAsString)) { + return CRUDQueryType.READ; + } + else if (finder.isWriteQuery(declaringType, nameAsString)) { + return CRUDQueryType.WRITE; + } + else + return null; + }) + .filter(Objects::nonNull) + .findFirst(); + } + + private static Optional findCRUDOperation(String declaringType, String nameAsString) { + return CRUDFinderFactory.getCRUDFinders().map( + finder -> { + if (finder.isCreateOperation(declaringType, nameAsString)) { + return CRUDOperationType.CREATE; + } + else if (finder.isReadOperation(declaringType, nameAsString)) { + return CRUDOperationType.READ; + } + else if (finder.isUpdateOperation(declaringType, nameAsString)) { + return CRUDOperationType.UPDATE; + } + else if (finder.isDeleteOperation(declaringType, nameAsString)) { + return CRUDOperationType.DELETE; + } + else + return null; + }) + .filter(Objects::nonNull) + .findFirst(); + } + /** * Creates and returns a new CallSite object for the given expression, which * can be a method-call or object-creation expression. @@ -719,7 +778,20 @@ private static List getCallSites(Optional callableBody) { * @param isConstructorCall * @return */ - private static CallSite createCallSite(Expression callExpr, String calleeName, String receiverExpr, String receiverType, List arguments, String returnType, String calleeSignature, boolean isStaticCall, boolean isConstructorCall, AccessSpecifier accessSpecifier) { + private static CallSite createCallSite( + Expression callExpr, + String calleeName, + String receiverExpr, + String receiverType, + List arguments, + String returnType, + String calleeSignature, + boolean isStaticCall, + boolean isConstructorCall, + CRUDOperation crudOperation, + CRUDQuery crudQuery, + AccessSpecifier accessSpecifier + ) { CallSite callSite = new CallSite(); callSite.setMethodName(calleeName); callSite.setReceiverExpr(receiverExpr); diff --git a/src/main/java/com/ibm/cldk/analysis/CRUDFinderFactory.java b/src/main/java/com/ibm/cldk/analysis/CRUDFinderFactory.java new file mode 100644 index 00000000..e4386743 --- /dev/null +++ b/src/main/java/com/ibm/cldk/analysis/CRUDFinderFactory.java @@ -0,0 +1,34 @@ +package com.ibm.cldk.analysis; + +import com.ibm.cldk.analysis.interfaces.AbstractCRUDFinder; +import com.ibm.cldk.analysis.jakarta.JPACRUDFinder; +import com.ibm.cldk.analysis.jdbc.JDBCCRUDFinder; +import com.ibm.cldk.analysis.spring.SpringCRUDFinder; +import org.apache.commons.lang3.NotImplementedException; + +import java.util.stream.Stream; + +public class CRUDFinderFactory { + public static AbstractCRUDFinder getCRUDFinder(String framework) { + switch (framework.toLowerCase()) { + case "jpa": + case "jakarta": + return new JPACRUDFinder(); + case "spring": + case "springboot": + return new SpringCRUDFinder(); + case "jdbc": + return new JDBCCRUDFinder(); + case "camel": + throw new NotImplementedException("Camel CRUD finder not implemented yet"); + case "struts": + throw new NotImplementedException("Struts CRUD finder not implemented yet"); + default: + throw new IllegalArgumentException("Unknown framework: " + framework); + } + } + + public static Stream getCRUDFinders() { + return Stream.of(new JPACRUDFinder(), new SpringCRUDFinder(), new JDBCCRUDFinder()); + } +} \ No newline at end of file diff --git a/src/main/java/com/ibm/cldk/analysis/EntrypointsFinderFactory.java b/src/main/java/com/ibm/cldk/analysis/EntrypointsFinderFactory.java new file mode 100644 index 00000000..583a2f39 --- /dev/null +++ b/src/main/java/com/ibm/cldk/analysis/EntrypointsFinderFactory.java @@ -0,0 +1,33 @@ +package com.ibm.cldk.analysis; + +import com.ibm.cldk.analysis.interfaces.AbstractCRUDFinder; +import com.ibm.cldk.analysis.interfaces.AbstractEntrypointFinder; +import com.ibm.cldk.analysis.jakarta.JPACRUDFinder; +import com.ibm.cldk.analysis.jakarta.JakartaEntrypointFinder; +import com.ibm.cldk.analysis.jdbc.JDBCCRUDFinder; +import com.ibm.cldk.analysis.spring.SpringCRUDFinder; +import com.ibm.cldk.analysis.struts.StrutsEntrypointFinder; +import org.apache.commons.lang3.NotImplementedException; + +import java.util.stream.Stream; + +public class EntrypointsFinderFactory { + public static AbstractEntrypointFinder getEntrypointFinder(String framework) { + switch (framework.toLowerCase()) { + case "jakarta": + return new JakartaEntrypointFinder(); + case "spring": + return new StrutsEntrypointFinder(); + case "camel": + throw new NotImplementedException("Camel CRUD finder not implemented yet"); + case "struts": + throw new NotImplementedException("Struts CRUD finder not implemented yet"); + default: + throw new IllegalArgumentException("Unknown framework: " + framework); + } + } + + public static Stream getEntrypointFinders() { + return Stream.of(new JPACRUDFinder(), new SpringCRUDFinder(), new JDBCCRUDFinder()); + } +} diff --git a/src/main/java/com/ibm/cldk/analysis/camel/CamelEntrypointFinder.java b/src/main/java/com/ibm/cldk/analysis/camel/CamelEntrypointFinder.java new file mode 100644 index 00000000..5374187a --- /dev/null +++ b/src/main/java/com/ibm/cldk/analysis/camel/CamelEntrypointFinder.java @@ -0,0 +1,17 @@ +package com.ibm.cldk.analysis.camel; + +import com.ibm.cldk.analysis.interfaces.AbstractEntrypointFinder; +import com.ibm.cldk.utils.annotations.NotImplemented; + +@NotImplemented(comment = "This class is not implemented yet. Leaving this here to refactor entrypoint detection.") +public class CamelEntrypointFinder extends AbstractEntrypointFinder { + @Override + public boolean isEntrypointClass(String receiverType, String name) { + return false; + } + + @Override + public boolean isEntrypointMethod(String receiverType, String name) { + return false; + } +} diff --git a/src/main/java/com/ibm/cldk/analysis/interfaces/AbstractCRUDFinder.java b/src/main/java/com/ibm/cldk/analysis/interfaces/AbstractCRUDFinder.java new file mode 100644 index 00000000..66b0e4c4 --- /dev/null +++ b/src/main/java/com/ibm/cldk/analysis/interfaces/AbstractCRUDFinder.java @@ -0,0 +1,20 @@ +package com.ibm.cldk.analysis.interfaces; + +import java.util.List; + +/** + * Abstract base class for finding CRUD operations in various frameworks. + */ +public abstract class AbstractCRUDFinder { + public abstract boolean isCreateOperation(String receiverType, String methodName); + + public abstract boolean isDeleteOperation(String receiverType, String methodName); + + public abstract boolean isUpdateOperation(String receiverType, String methodName); + + public abstract boolean isReadOperation(String receiverType, String methodName); + + public abstract boolean isReadQuery(String declaringType, String nameAsString); + + public abstract boolean isWriteQuery(String declaringType, String nameAsString); +} diff --git a/src/main/java/com/ibm/cldk/analysis/interfaces/AbstractEntrypointFinder.java b/src/main/java/com/ibm/cldk/analysis/interfaces/AbstractEntrypointFinder.java new file mode 100644 index 00000000..8dc6aa6f --- /dev/null +++ b/src/main/java/com/ibm/cldk/analysis/interfaces/AbstractEntrypointFinder.java @@ -0,0 +1,23 @@ +package com.ibm.cldk.analysis.interfaces; + +import com.ibm.cldk.utils.annotations.NotImplemented; + +@NotImplemented(comment = "This class is not implemented yet. Leaving this here to refactor entrypoint detection.") +public abstract class AbstractEntrypointFinder { + /** + * Enum for rules. + */ + enum Rulest{ + } + + /** + * Detect if the method is an entrypoint. + * + * @param receiverType The type of the receiver object. + * @param name The name of the method. + * @return True if the method is an entrypoint, false otherwise. + */ + public abstract boolean isEntrypointClass(String receiverType, String name); + + public abstract boolean isEntrypointMethod(String receiverType, String name); +} diff --git a/src/main/java/com/ibm/cldk/analysis/jakarta/JPACRUDFinder.java b/src/main/java/com/ibm/cldk/analysis/jakarta/JPACRUDFinder.java new file mode 100644 index 00000000..75c37e26 --- /dev/null +++ b/src/main/java/com/ibm/cldk/analysis/jakarta/JPACRUDFinder.java @@ -0,0 +1,73 @@ +package com.ibm.cldk.analysis.jakarta; + +import com.ibm.cldk.analysis.interfaces.AbstractCRUDFinder; + +public class JPACRUDFinder extends AbstractCRUDFinder { + /** + * Detect if the method call is a create operation. + * + * @param receiverType The type of the receiver object. + * @param name The name of the method. + * @return True if the method call is a create operation, false otherwise. + */ + @Override + public boolean isCreateOperation(String receiverType, String name) { + return false; + } + + /** + * Detect if the method call is a delete operation. + * + * @param receiverType The type of the receiver object. + * @param name The name of the method. + * @return True if the method call is a delete operation, false otherwise. + */ + @Override + public boolean isDeleteOperation(String receiverType, String name) { + return false; + } + + /** + * Detect if the method call is an update operation. + * + * @param receiverType The type of the receiver object. + * @param name The name of the method. + * @return True if the method call is an update operation, false otherwise. + */ + @Override + public boolean isUpdateOperation(String receiverType, String name) { + return false; + } + + /** + * Detect if the method call is a read operation. + * + * @param receiverType The type of the receiver object. + * @param name The name of the method. + * @return True if the method call is a read operation, false otherwise. + */ + @Override + public boolean isReadOperation(String receiverType, String name) { + return false; + } + + /** + * @param declaringType + * @param nameAsString + * @return + */ + @Override + public boolean isReadQuery(String declaringType, String nameAsString) { + return false; + } + + /** + * @param declaringType + * @param nameAsString + * @return + */ + @Override + public boolean isWriteQuery(String declaringType, String nameAsString) { + return false; + } +} diff --git a/src/main/java/com/ibm/cldk/analysis/jakarta/JakartaEntrypointFinder.java b/src/main/java/com/ibm/cldk/analysis/jakarta/JakartaEntrypointFinder.java new file mode 100644 index 00000000..8133c97b --- /dev/null +++ b/src/main/java/com/ibm/cldk/analysis/jakarta/JakartaEntrypointFinder.java @@ -0,0 +1,17 @@ +package com.ibm.cldk.analysis.jakarta; + +import com.ibm.cldk.analysis.interfaces.AbstractEntrypointFinder; +import com.ibm.cldk.utils.annotations.NotImplemented; + +@NotImplemented(comment = "This class is not implemented yet. Leaving this here to refactor entrypoint detection.") +public class JakartaEntrypointFinder extends AbstractEntrypointFinder { + @Override + public boolean isEntrypointClass(String receiverType, String name) { + return false; + } + + @Override + public boolean isEntrypointMethod(String receiverType, String name) { + return false; + } +} diff --git a/src/main/java/com/ibm/cldk/analysis/jdbc/JDBCCRUDFinder.java b/src/main/java/com/ibm/cldk/analysis/jdbc/JDBCCRUDFinder.java new file mode 100644 index 00000000..a9604e57 --- /dev/null +++ b/src/main/java/com/ibm/cldk/analysis/jdbc/JDBCCRUDFinder.java @@ -0,0 +1,73 @@ +package com.ibm.cldk.analysis.jdbc; + +import com.ibm.cldk.analysis.interfaces.AbstractCRUDFinder; + +public class JDBCCRUDFinder extends AbstractCRUDFinder { + /** + * Detect if the method call is a create operation. + * + * @param receiverType + * @param name + * @return + */ + @Override + public boolean isCreateOperation(String receiverType, String name) { + return false; + } + + /** + * Detect if the method call is a delete operation. + * + * @param receiverType + * @param name + * @return + */ + @Override + public boolean isDeleteOperation(String receiverType, String name) { + return false; + } + + /** + * Detect if the method call is an update operation. + * + * @param receiverType + * @param name + * @return + */ + @Override + public boolean isUpdateOperation(String receiverType, String name) { + return false; + } + + /** + * Detect if the method call is a read operation. + * + * @param receiverType + * @param name + * @return + */ + @Override + public boolean isReadOperation(String receiverType, String name) { + return false; + } + + /** + * @param declaringType + * @param nameAsString + * @return + */ + @Override + public boolean isReadQuery(String declaringType, String nameAsString) { + return false; + } + + /** + * @param declaringType + * @param nameAsString + * @return + */ + @Override + public boolean isWriteQuery(String declaringType, String nameAsString) { + return false; + } +} diff --git a/src/main/java/com/ibm/cldk/analysis/spring/SpringCRUDFinder.java b/src/main/java/com/ibm/cldk/analysis/spring/SpringCRUDFinder.java new file mode 100644 index 00000000..29cea9dd --- /dev/null +++ b/src/main/java/com/ibm/cldk/analysis/spring/SpringCRUDFinder.java @@ -0,0 +1,73 @@ +package com.ibm.cldk.analysis.spring; + +import com.ibm.cldk.analysis.interfaces.AbstractCRUDFinder; + +public class SpringCRUDFinder extends AbstractCRUDFinder { + /** + * Detect if the method call is a create operation. + * + * @param receiverType The type of the receiver object. + * @param name The name of the method. + * @return True if the method call is a create operation, false otherwise. + */ + @Override + public boolean isCreateOperation(String receiverType, String name) { + return false; + } + + /** + * Detect if the method call is a delete operation. + * + * @param receiverType The type of the receiver object. + * @param name The name of the method. + * @return True if the method call is a delete operation, false otherwise. + */ + @Override + public boolean isDeleteOperation(String receiverType, String name) { + return false; + } + + /** + * Detect if the method call is an update operation. + * + * @param receiverType The type of the receiver object. + * @param name The name of the method. + * @return True if the method call is an update operation, false otherwise. + */ + @Override + public boolean isUpdateOperation(String receiverType, String name) { + return false; + } + + /** + * Detect if the method call is a read operation. + * + * @param receiverType The type of the receiver object. + * @param name The name of the method. + * @return True if the method call is a read operation, false otherwise. + */ + @Override + public boolean isReadOperation(String receiverType, String name) { + return false; + } + + /** + * @param declaringType + * @param nameAsString + * @return + */ + @Override + public boolean isReadQuery(String declaringType, String nameAsString) { + return false; + } + + /** + * @param declaringType + * @param nameAsString + * @return + */ + @Override + public boolean isWriteQuery(String declaringType, String nameAsString) { + return false; + } +} diff --git a/src/main/java/com/ibm/cldk/analysis/spring/SpringEntrypointFinder.java b/src/main/java/com/ibm/cldk/analysis/spring/SpringEntrypointFinder.java new file mode 100644 index 00000000..3e4d938e --- /dev/null +++ b/src/main/java/com/ibm/cldk/analysis/spring/SpringEntrypointFinder.java @@ -0,0 +1,17 @@ +package com.ibm.cldk.analysis.spring; + +import com.ibm.cldk.analysis.interfaces.AbstractEntrypointFinder; +import com.ibm.cldk.utils.annotations.NotImplemented; + +@NotImplemented(comment = "This class is not implemented yet. Leaving this here to refactor entrypoint detection.") +public class SpringEntrypointFinder extends AbstractEntrypointFinder { + @Override + public boolean isEntrypointClass(String receiverType, String name) { + return false; + } + + @Override + public boolean isEntrypointMethod(String receiverType, String name) { + return false; + } +} diff --git a/src/main/java/com/ibm/cldk/analysis/struts/StrutsEntrypointFinder.java b/src/main/java/com/ibm/cldk/analysis/struts/StrutsEntrypointFinder.java new file mode 100644 index 00000000..5f177103 --- /dev/null +++ b/src/main/java/com/ibm/cldk/analysis/struts/StrutsEntrypointFinder.java @@ -0,0 +1,15 @@ +package com.ibm.cldk.analysis.struts; + +import com.ibm.cldk.analysis.interfaces.AbstractEntrypointFinder; + +public class StrutsEntrypointFinder extends AbstractEntrypointFinder { + @Override + public boolean isEntrypointClass(String receiverType, String name) { + return false; + } + + @Override + public boolean isEntrypointMethod(String receiverType, String name) { + return false; + } +} diff --git a/src/main/java/com/ibm/cldk/analysis/utils/enums/CRUDOperationType.java b/src/main/java/com/ibm/cldk/analysis/utils/enums/CRUDOperationType.java new file mode 100644 index 00000000..74225880 --- /dev/null +++ b/src/main/java/com/ibm/cldk/analysis/utils/enums/CRUDOperationType.java @@ -0,0 +1,8 @@ +package com.ibm.cldk.analysis.utils.enums; + +public enum CRUDOperationType { + CREATE, + READ, + UPDATE, + DELETE; +} \ No newline at end of file diff --git a/src/main/java/com/ibm/cldk/analysis/utils/enums/CRUDQueryType.java b/src/main/java/com/ibm/cldk/analysis/utils/enums/CRUDQueryType.java new file mode 100644 index 00000000..417397ce --- /dev/null +++ b/src/main/java/com/ibm/cldk/analysis/utils/enums/CRUDQueryType.java @@ -0,0 +1,6 @@ +package com.ibm.cldk.analysis.utils.enums; + +public enum CRUDQueryType { + READ, + WRITE; +} diff --git a/src/main/java/com/ibm/cldk/entities/CRUDOperation.java b/src/main/java/com/ibm/cldk/entities/CRUDOperation.java index 3a7fbb6c..a43e253a 100644 --- a/src/main/java/com/ibm/cldk/entities/CRUDOperation.java +++ b/src/main/java/com/ibm/cldk/entities/CRUDOperation.java @@ -1,5 +1,6 @@ package com.ibm.cldk.entities; +import com.ibm.cldk.analysis.utils.enums.CRUDOperationType; import com.ibm.cldk.utils.annotations.NotImplemented; import lombok.AllArgsConstructor; import lombok.Data; @@ -9,24 +10,12 @@ @Data @NoArgsConstructor @AllArgsConstructor -@NotImplemented public class CRUDOperation { - public enum OperationType { - CREATE, - READ, - UPDATE, - DELETE, - UNKNOWN - } - - private OperationType operationType; - private String targetTable; - private int lineNumber; - private int startPosition; - private int endPosition; + private int lineNumber = -1; + private CRUDOperationType operationType; @NotImplemented - private String operationString; + private String targetTable = null; @NotImplemented private List involvedFields; @NotImplemented @@ -37,4 +26,9 @@ public enum OperationType { private String technology; @NotImplemented private boolean isBatchOperation = false; + + public CRUDOperation(int lineNumber, CRUDOperationType crudOperationType) { + this.lineNumber = lineNumber; + this.operationType = crudOperationType; + } } \ No newline at end of file diff --git a/src/main/java/com/ibm/cldk/entities/CRUDQuery.java b/src/main/java/com/ibm/cldk/entities/CRUDQuery.java new file mode 100644 index 00000000..b3eb6b37 --- /dev/null +++ b/src/main/java/com/ibm/cldk/entities/CRUDQuery.java @@ -0,0 +1,15 @@ +package com.ibm.cldk.entities; + +import com.ibm.cldk.analysis.utils.enums.CRUDQueryType; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +@Data +@NoArgsConstructor +@AllArgsConstructor +public class CRUDQuery { + private int lineNumber = -1; + private String query; + private CRUDQueryType queryType; +} diff --git a/src/main/java/com/ibm/cldk/entities/CallSite.java b/src/main/java/com/ibm/cldk/entities/CallSite.java index a0437884..9bbf6e13 100644 --- a/src/main/java/com/ibm/cldk/entities/CallSite.java +++ b/src/main/java/com/ibm/cldk/entities/CallSite.java @@ -2,6 +2,7 @@ import lombok.Data; +import java.util.ArrayList; import java.util.List; @Data @@ -19,7 +20,7 @@ public class CallSite { private boolean isUnspecified = false; private boolean isStaticCall; private boolean isConstructorCall; - private boolean isDatabase = false; + private CRUDOperation crudOperations = null; private int startLine; private int startColumn; private int endLine; diff --git a/src/main/java/com/ibm/cldk/utils/ProjectDirectoryScanner.java b/src/main/java/com/ibm/cldk/utils/ProjectDirectoryScanner.java index d6178a15..f57031a3 100644 --- a/src/main/java/com/ibm/cldk/utils/ProjectDirectoryScanner.java +++ b/src/main/java/com/ibm/cldk/utils/ProjectDirectoryScanner.java @@ -14,10 +14,13 @@ public static List classFilesStream(String projectPath) throws IOException Log.info("Finding *.class files in " + projectDir); if (Files.exists(projectDir)) { try (Stream paths = Files.walk(projectDir)) { - return paths - .filter(file -> !Files.isDirectory(file) && file.toString().endsWith(".class")) - .filter(file -> !file.toAbsolutePath().toString().contains("test/resources/")) - .filter(file -> !file.toAbsolutePath().toString().contains("main/resources/")) + return paths.filter(file -> !Files.isDirectory(file) && file.toString().endsWith(".class")) + .filter(file -> { + // Let's find the path relative to the project directory + Path relativePath = projectDir.relativize(file.toAbsolutePath()); + String relativePathAsString = relativePath.toString().replace("\\", "/"); // Windows fix + return !relativePathAsString.contains("test/resources/") && !relativePathAsString.contains("main/resources/"); + }) .collect(Collectors.toList()); } } diff --git a/src/main/java/com/ibm/cldk/utils/annotations/NotImplemented.java b/src/main/java/com/ibm/cldk/utils/annotations/NotImplemented.java index 7a70b629..f6900e18 100644 --- a/src/main/java/com/ibm/cldk/utils/annotations/NotImplemented.java +++ b/src/main/java/com/ibm/cldk/utils/annotations/NotImplemented.java @@ -7,6 +7,5 @@ @Retention(RetentionPolicy.RUNTIME) public @interface NotImplemented { String value() default ""; - String since() default ""; - String ticketId() default ""; + String comment() default ""; } \ No newline at end of file From 61346da4dd8883d3a159ab32580158822bb267da Mon Sep 17 00:00:00 2001 From: Rahul Krishna Date: Fri, 7 Feb 2025 22:17:19 -0500 Subject: [PATCH 03/12] Fix issue #108. Update gson to store nulls. Signed-off-by: Rahul Krishna --- build.gradle | 2 +- src/main/java/com/ibm/cldk/CodeAnalyzer.java | 1 + src/main/java/com/ibm/cldk/entities/CallSite.java | 2 +- 3 files changed, 3 insertions(+), 2 deletions(-) diff --git a/build.gradle b/build.gradle index a3e91d4d..1f45f57c 100644 --- a/build.gradle +++ b/build.gradle @@ -1,4 +1,4 @@ -/* + /* Copyright IBM Corporation 2023, 2024 Licensed under the Apache Public License 2.0, Version 2.0 (the "License"); diff --git a/src/main/java/com/ibm/cldk/CodeAnalyzer.java b/src/main/java/com/ibm/cldk/CodeAnalyzer.java index 6ad44f2d..2490e57d 100644 --- a/src/main/java/com/ibm/cldk/CodeAnalyzer.java +++ b/src/main/java/com/ibm/cldk/CodeAnalyzer.java @@ -91,6 +91,7 @@ public class CodeAnalyzer implements Runnable { public static Gson gson = new GsonBuilder() .setFieldNamingPolicy(FieldNamingPolicy.LOWER_CASE_WITH_UNDERSCORES) .setPrettyPrinting() + .serializeNulls() // Fix for issue #108 .disableHtmlEscaping() .create(); diff --git a/src/main/java/com/ibm/cldk/entities/CallSite.java b/src/main/java/com/ibm/cldk/entities/CallSite.java index 9bbf6e13..7157b817 100644 --- a/src/main/java/com/ibm/cldk/entities/CallSite.java +++ b/src/main/java/com/ibm/cldk/entities/CallSite.java @@ -20,7 +20,7 @@ public class CallSite { private boolean isUnspecified = false; private boolean isStaticCall; private boolean isConstructorCall; - private CRUDOperation crudOperations = null; + private CRUDOperation crudOperation = null; private int startLine; private int startColumn; private int endLine; From 2df77d2e236f2bda796779dfeb55711a0262262c Mon Sep 17 00:00:00 2001 From: Rahul Krishna Date: Sat, 8 Feb 2025 00:39:24 -0500 Subject: [PATCH 04/12] Issue #109. We now support detecting CRUD queries and operations in JavaEE and Jakarta Persistence API. Signed-off-by: Rahul Krishna --- .github/ISSUE_TEMPLATE/bug_report.md | 43 - .github/ISSUE_TEMPLATE/feature_request.md | 24 - .github/ISSUE_TEMPLATE/user_story.md | 26 - .github/workflows/main.yml | 57 - gradle.properties | 2 +- src/main/java/com/ibm/cldk/SymbolTable.java | 39 +- .../com/ibm/cldk/SystemDependencyGraph.java | 2 +- .../cldk/analysis/jakarta/JPACRUDFinder.java | 73 - .../analysis/utils/enums/CRUDQueryType.java | 6 - .../com/ibm/cldk/entities/CRUDOperation.java | 2 +- .../java/com/ibm/cldk/entities/CRUDQuery.java | 6 +- .../java/com/ibm/cldk/entities/CallSite.java | 3 + .../CRUDFinderFactory.java | 10 +- .../EntrypointsFinderFactory.java | 16 +- .../camel/CamelEntrypointFinder.java | 4 +- .../cldk/javaee/jakarta/JPACRUDFinder.java | 96 + .../jakarta/JakartaEntrypointFinder.java | 4 +- .../jdbc/JDBCCRUDFinder.java | 34 +- .../spring/SpringCRUDFinder.java | 35 +- .../spring/SpringEntrypointFinder.java | 4 +- .../struts/StrutsEntrypointFinder.java | 4 +- .../utils/enums/CRUDOperationType.java | 2 +- .../javaee/utils/enums/CRUDQueryType.java | 7 + .../javaee/utils/enums/JPAQueryMethod.java | 45 + .../utils}/interfaces/AbstractCRUDFinder.java | 13 +- .../interfaces/AbstractEntrypointFinder.java | 2 +- .../java/com/ibm/cldk/utils/BuildProject.java | 2 +- .../java/com/ibm/cldk/utils/ScopeUtils.java | 12 +- .../com/ibm/cldk/utils/annotations/Note.java | 10 + .../ibm/cldk/CodeAnalyzerIntegrationTest.java | 19 +- .../test-applications/daytrader8/Dockerfile | 14 + .../daytrader8/Dockerfile-db2 | 21 + .../test-applications/daytrader8/LICENSE | 202 ++ .../test-applications/daytrader8/README.md | 45 + .../daytrader8/README_LOAD_TEST.md | 151 + .../daytrader8/jmeter_files/README.txt | 54 + .../daytrader8/jmeter_files/daytrader8.jmx | 2607 +++++++++++++++++ .../jmeter_files/daytrader8_mojarra.jmx | 2600 ++++++++++++++++ .../jmeter_files/daytrader8_mojarra_no_ws.jmx | 2600 ++++++++++++++++ .../jmeter_files/daytrader8_no_ws.jmx | 2607 +++++++++++++++++ .../jmeter_files/daytrader_primitive.jmx | 203 ++ .../test-applications/daytrader8/pom.xml | 104 + .../tradedb/README_DO_NOT_TOUCH_FILES.txt | 9 + .../tradedb/log/README_DO_NOT_TOUCH_FILES.txt | 8 + .../resources/data/tradedb/log/log.ctrl | Bin 0 -> 48 bytes .../resources/data/tradedb/log/log286.dat | Bin 0 -> 1048576 bytes .../resources/data/tradedb/log/logmirror.ctrl | Bin 0 -> 48 bytes .../seg0/README_DO_NOT_TOUCH_FILES.txt | 8 + .../resources/data/tradedb/seg0/c10.dat | Bin 0 -> 8192 bytes .../resources/data/tradedb/seg0/c101.dat | Bin 0 -> 8192 bytes .../resources/data/tradedb/seg0/c111.dat | Bin 0 -> 8192 bytes .../resources/data/tradedb/seg0/c121.dat | Bin 0 -> 8192 bytes .../resources/data/tradedb/seg0/c130.dat | Bin 0 -> 8192 bytes .../resources/data/tradedb/seg0/c141.dat | Bin 0 -> 8192 bytes .../resources/data/tradedb/seg0/c150.dat | Bin 0 -> 8192 bytes .../resources/data/tradedb/seg0/c161.dat | Bin 0 -> 8192 bytes .../resources/data/tradedb/seg0/c171.dat | Bin 0 -> 8192 bytes .../resources/data/tradedb/seg0/c180.dat | Bin 0 -> 40960 bytes .../resources/data/tradedb/seg0/c191.dat | Bin 0 -> 16384 bytes .../resources/data/tradedb/seg0/c1a1.dat | Bin 0 -> 16384 bytes .../resources/data/tradedb/seg0/c1b1.dat | Bin 0 -> 16384 bytes .../resources/data/tradedb/seg0/c1c0.dat | Bin 0 -> 8192 bytes .../resources/data/tradedb/seg0/c1d1.dat | Bin 0 -> 8192 bytes .../resources/data/tradedb/seg0/c1e0.dat | Bin 0 -> 8192 bytes .../resources/data/tradedb/seg0/c1f1.dat | Bin 0 -> 8192 bytes .../resources/data/tradedb/seg0/c20.dat | Bin 0 -> 69632 bytes .../resources/data/tradedb/seg0/c200.dat | Bin 0 -> 8192 bytes .../resources/data/tradedb/seg0/c211.dat | Bin 0 -> 8192 bytes .../resources/data/tradedb/seg0/c221.dat | Bin 0 -> 8192 bytes .../resources/data/tradedb/seg0/c230.dat | Bin 0 -> 151552 bytes .../resources/data/tradedb/seg0/c241.dat | Bin 0 -> 8192 bytes .../resources/data/tradedb/seg0/c251.dat | Bin 0 -> 16384 bytes .../resources/data/tradedb/seg0/c260.dat | Bin 0 -> 8192 bytes .../resources/data/tradedb/seg0/c271.dat | Bin 0 -> 8192 bytes .../resources/data/tradedb/seg0/c281.dat | Bin 0 -> 8192 bytes .../resources/data/tradedb/seg0/c290.dat | Bin 0 -> 8192 bytes .../resources/data/tradedb/seg0/c2a1.dat | Bin 0 -> 8192 bytes .../resources/data/tradedb/seg0/c2b1.dat | Bin 0 -> 8192 bytes .../resources/data/tradedb/seg0/c2c1.dat | Bin 0 -> 8192 bytes .../resources/data/tradedb/seg0/c2d0.dat | Bin 0 -> 16384 bytes .../resources/data/tradedb/seg0/c2e1.dat | Bin 0 -> 8192 bytes .../resources/data/tradedb/seg0/c2f0.dat | Bin 0 -> 8192 bytes .../resources/data/tradedb/seg0/c300.dat | Bin 0 -> 8192 bytes .../resources/data/tradedb/seg0/c31.dat | Bin 0 -> 16384 bytes .../resources/data/tradedb/seg0/c311.dat | Bin 0 -> 8192 bytes .../resources/data/tradedb/seg0/c321.dat | Bin 0 -> 8192 bytes .../resources/data/tradedb/seg0/c331.dat | Bin 0 -> 8192 bytes .../resources/data/tradedb/seg0/c340.dat | Bin 0 -> 8192 bytes .../resources/data/tradedb/seg0/c351.dat | Bin 0 -> 8192 bytes .../resources/data/tradedb/seg0/c361.dat | Bin 0 -> 8192 bytes .../resources/data/tradedb/seg0/c371.dat | Bin 0 -> 8192 bytes .../resources/data/tradedb/seg0/c380.dat | Bin 0 -> 8192 bytes .../resources/data/tradedb/seg0/c391.dat | Bin 0 -> 8192 bytes .../resources/data/tradedb/seg0/c3a1.dat | Bin 0 -> 8192 bytes .../resources/data/tradedb/seg0/c3b1.dat | Bin 0 -> 8192 bytes .../resources/data/tradedb/seg0/c3c0.dat | Bin 0 -> 8192 bytes .../resources/data/tradedb/seg0/c3d1.dat | Bin 0 -> 8192 bytes .../resources/data/tradedb/seg0/c3e1.dat | Bin 0 -> 8192 bytes .../resources/data/tradedb/seg0/c3f1.dat | Bin 0 -> 8192 bytes .../resources/data/tradedb/seg0/c400.dat | Bin 0 -> 8192 bytes .../resources/data/tradedb/seg0/c41.dat | Bin 0 -> 16384 bytes .../resources/data/tradedb/seg0/c411.dat | Bin 0 -> 8192 bytes .../resources/data/tradedb/seg0/c421.dat | Bin 0 -> 8192 bytes .../resources/data/tradedb/seg0/c430.dat | Bin 0 -> 8192 bytes .../resources/data/tradedb/seg0/c441.dat | Bin 0 -> 8192 bytes .../resources/data/tradedb/seg0/c451.dat | Bin 0 -> 8192 bytes .../resources/data/tradedb/seg0/c461.dat | Bin 0 -> 8192 bytes .../resources/data/tradedb/seg0/c470.dat | Bin 0 -> 8192 bytes .../resources/data/tradedb/seg0/c481.dat | Bin 0 -> 8192 bytes .../resources/data/tradedb/seg0/c490.dat | Bin 0 -> 8192 bytes .../resources/data/tradedb/seg0/c4a1.dat | Bin 0 -> 8192 bytes .../resources/data/tradedb/seg0/c4b0.dat | Bin 0 -> 65536 bytes .../resources/data/tradedb/seg0/c4c1.dat | Bin 0 -> 8192 bytes .../resources/data/tradedb/seg0/c4d0.dat | Bin 0 -> 8192 bytes .../resources/data/tradedb/seg0/c4e1.dat | Bin 0 -> 8192 bytes .../resources/data/tradedb/seg0/c4f1.dat | Bin 0 -> 65536 bytes .../resources/data/tradedb/seg0/c51.dat | Bin 0 -> 16384 bytes .../resources/data/tradedb/seg0/c60.dat | Bin 0 -> 12288 bytes .../resources/data/tradedb/seg0/c71.dat | Bin 0 -> 8192 bytes .../resources/data/tradedb/seg0/c720.dat | Bin 0 -> 200704 bytes .../resources/data/tradedb/seg0/c731.dat | Bin 0 -> 69632 bytes .../resources/data/tradedb/seg0/c740.dat | Bin 0 -> 69632 bytes .../resources/data/tradedb/seg0/c751.dat | Bin 0 -> 28672 bytes .../resources/data/tradedb/seg0/c760.dat | Bin 0 -> 135168 bytes .../resources/data/tradedb/seg0/c771.dat | Bin 0 -> 69632 bytes .../resources/data/tradedb/seg0/c780.dat | Bin 0 -> 8192 bytes .../resources/data/tradedb/seg0/c791.dat | Bin 0 -> 8192 bytes .../resources/data/tradedb/seg0/c7a0.dat | Bin 0 -> 69632 bytes .../resources/data/tradedb/seg0/c7b1.dat | Bin 0 -> 20480 bytes .../resources/data/tradedb/seg0/c7c0.dat | Bin 0 -> 331776 bytes .../resources/data/tradedb/seg0/c7d1.dat | Bin 0 -> 69632 bytes .../resources/data/tradedb/seg0/c7e1.dat | Bin 0 -> 28672 bytes .../resources/data/tradedb/seg0/c7f1.dat | Bin 0 -> 69632 bytes .../resources/data/tradedb/seg0/c801.dat | Bin 0 -> 69632 bytes .../resources/data/tradedb/seg0/c81.dat | Bin 0 -> 8192 bytes .../resources/data/tradedb/seg0/c811.dat | Bin 0 -> 69632 bytes .../resources/data/tradedb/seg0/c821.dat | Bin 0 -> 135168 bytes .../resources/data/tradedb/seg0/c90.dat | Bin 0 -> 36864 bytes .../resources/data/tradedb/seg0/ca1.dat | Bin 0 -> 32768 bytes .../resources/data/tradedb/seg0/cb1.dat | Bin 0 -> 8192 bytes .../resources/data/tradedb/seg0/cc0.dat | Bin 0 -> 8192 bytes .../resources/data/tradedb/seg0/cd1.dat | Bin 0 -> 8192 bytes .../resources/data/tradedb/seg0/ce1.dat | Bin 0 -> 8192 bytes .../resources/data/tradedb/seg0/cf0.dat | Bin 0 -> 12288 bytes .../resources/data/tradedb/service.properties | 23 + .../daytrader8/scripts/buildAll.sh | 20 + .../daytrader8/scripts/switchFromPayara.sh | 16 + .../daytrader8/scripts/switchFromWF.sh | 17 + .../daytrader8/scripts/switchToPayara.sh | 16 + .../daytrader8/scripts/switchToWF.sh | 17 + .../src/main/java/META-INF/DEPENDENCIES | 15 + .../daytrader8/src/main/java/META-INF/LICENSE | 202 ++ .../daytrader8/src/main/java/build.properties | 17 + .../beans/MarketSummaryDataBean.java | 287 ++ .../daytrader/beans/RunStatsDataBean.java | 294 ++ .../daytrader/entities/AccountDataBean.java | 286 ++ .../entities/AccountProfileDataBean.java | 184 ++ .../daytrader/entities/HoldingDataBean.java | 204 ++ .../daytrader/entities/OrderDataBean.java | 339 +++ .../daytrader/entities/QuoteDataBean.java | 213 ++ .../daytrader/impl/direct/AsyncOrder.java | 71 + .../impl/direct/AsyncOrderSubmitter.java | 40 + .../impl/direct/KeySequenceDirect.java | 114 + .../daytrader/impl/direct/TradeDirect.java | 1837 ++++++++++++ .../impl/direct/TradeDirectDBUtils.java | 472 +++ .../impl/ejb3/AsyncScheduledOrder.java | 59 + .../ejb3/AsyncScheduledOrderSubmitter.java | 41 + .../impl/ejb3/MarketSummarySingleton.java | 138 + .../daytrader/impl/ejb3/TradeSLSBBean.java | 618 ++++ .../impl/session2direct/DirectSLSBBean.java | 237 ++ .../interfaces/MarketSummaryUpdate.java | 27 + .../interfaces/QuotePriceChange.java | 31 + .../daytrader/interfaces/RuntimeMode.java | 33 + .../samples/daytrader/interfaces/Trace.java | 33 + .../samples/daytrader/interfaces/TradeDB.java | 44 + .../daytrader/interfaces/TradeEJB.java | 32 + .../daytrader/interfaces/TradeJDBC.java | 32 + .../daytrader/interfaces/TradeServices.java | 338 +++ .../interfaces/TradeSession2Direct.java | 32 + .../daytrader/jaxrs/BroadcastResource.java | 70 + .../daytrader/jaxrs/JAXRSApplication.java | 28 + .../daytrader/jaxrs/QuoteResource.java | 84 + .../samples/daytrader/mdb/DTBroker3MDB.java | 159 + .../samples/daytrader/mdb/DTStreamer3MDB.java | 123 + .../samples/daytrader/util/Diagnostics.java | 77 + .../daytrader/util/FinancialUtils.java | 105 + .../samples/daytrader/util/KeyBlock.java | 140 + .../websphere/samples/daytrader/util/Log.java | 162 + .../samples/daytrader/util/MDBStats.java | 68 + .../util/RecentQuotePriceChangeList.java | 77 + .../samples/daytrader/util/TimerStat.java | 133 + .../daytrader/util/TraceInterceptor.java | 49 + .../samples/daytrader/util/TradeConfig.java | 752 +++++ .../util/TradeRunTimeModeLiteral.java | 35 + .../daytrader/web/jsf/AccountDataJSF.java | 327 +++ .../daytrader/web/jsf/HoldingData.java | 118 + .../daytrader/web/jsf/JSFLoginFilter.java | 88 + .../daytrader/web/jsf/LoginValidator.java | 55 + .../daytrader/web/jsf/MarketSummaryJSF.java | 166 ++ .../samples/daytrader/web/jsf/OrderData.java | 140 + .../daytrader/web/jsf/OrderDataJSF.java | 106 + .../daytrader/web/jsf/PortfolioJSF.java | 235 ++ .../samples/daytrader/web/jsf/QuoteData.java | 167 ++ .../samples/daytrader/web/jsf/QuoteJSF.java | 146 + .../daytrader/web/jsf/TradeAppJSF.java | 298 ++ .../daytrader/web/jsf/TradeConfigJSF.java | 331 +++ .../daytrader/web/prims/ExplicitGC.java | 158 + .../samples/daytrader/web/prims/PingBean.java | 41 + .../daytrader/web/prims/PingJDBCRead.java | 135 + .../daytrader/web/prims/PingJDBCRead2JSP.java | 128 + .../daytrader/web/prims/PingJDBCWrite.java | 140 + .../daytrader/web/prims/PingJSONPObject.java | 128 + .../web/prims/PingJSONPObjectFactory.java | 127 + .../web/prims/PingJSONPStreaming.java | 151 + .../web/prims/PingManagedExecutor.java | 120 + .../web/prims/PingManagedThread.java | 126 + .../web/prims/PingReentryServlet.java | 138 + .../daytrader/web/prims/PingServlet.java | 112 + .../daytrader/web/prims/PingServlet2DB.java | 114 + .../web/prims/PingServlet2Include.java | 104 + .../web/prims/PingServlet2IncludeRcv.java | 68 + .../daytrader/web/prims/PingServlet2JNDI.java | 109 + .../daytrader/web/prims/PingServlet2Jsp.java | 78 + .../daytrader/web/prims/PingServlet2PDF.java | 115 + .../web/prims/PingServlet2Servlet.java | 82 + .../web/prims/PingServlet2ServletRcv.java | 97 + .../web/prims/PingServlet30Async.java | 118 + .../web/prims/PingServlet31Async.java | 186 ++ .../web/prims/PingServlet31AsyncRead.java | 145 + .../prims/PingServletLargeContentLength.java | 95 + .../prims/PingServletSetContentLength.java | 121 + .../web/prims/PingServletWriter.java | 110 + .../daytrader/web/prims/PingSession1.java | 136 + .../daytrader/web/prims/PingSession2.java | 145 + .../daytrader/web/prims/PingSession3.java | 182 ++ .../web/prims/PingSession3Object.java | 92 + .../web/prims/PingUpgradeServlet.java | 157 + .../web/prims/PingWebSocketBinary.java | 65 + .../web/prims/PingWebSocketJson.java | 116 + .../web/prims/PingWebSocketTextAsync.java | 70 + .../web/prims/PingWebSocketTextSync.java | 67 + .../beanval/CDIMethodConstraintBean.java | 47 + .../prims/beanval/PingServletBeanValCDI.java | 107 + .../beanval/PingServletBeanValSimple1.java | 106 + .../beanval/PingServletBeanValSimple2.java | 106 + .../web/prims/beanval/SimpleBean1.java | 116 + .../web/prims/beanval/SimpleBean2.java | 47 + .../web/prims/cdi/CDIEventProducer.java | 49 + .../samples/daytrader/web/prims/cdi/Hit.java | 29 + .../daytrader/web/prims/cdi/HitAsync.java | 29 + .../daytrader/web/prims/cdi/PingCDIBean.java | 59 + .../web/prims/cdi/PingCDIJSFBean.java | 33 + .../daytrader/web/prims/cdi/PingEJBIFace.java | 24 + .../daytrader/web/prims/cdi/PingEJBLocal.java | 41 + .../web/prims/cdi/PingEJBLocalDecorator.java | 43 + .../web/prims/cdi/PingInterceptor.java | 42 + .../web/prims/cdi/PingInterceptorBinding.java | 33 + .../web/prims/cdi/PingServletCDI.java | 70 + ...ingServletCDIBeanManagerViaCDICurrent.java | 71 + .../cdi/PingServletCDIBeanManagerViaJNDI.java | 71 + .../web/prims/cdi/PingServletCDIEvent.java | 80 + .../prims/cdi/PingServletCDIEventAsync.java | 90 + .../web/prims/drive/PingServletDrive.java | 112 + .../web/prims/ejb3/PingServlet2Entity.java | 114 + .../web/prims/ejb3/PingServlet2MDBQueue.java | 147 + .../web/prims/ejb3/PingServlet2MDBTopic.java | 148 + .../web/prims/ejb3/PingServlet2Session.java | 121 + .../ejb3/PingServlet2Session2CMROne2Many.java | 114 + .../ejb3/PingServlet2Session2CMROne2One.java | 107 + .../ejb3/PingServlet2Session2Entity.java | 126 + .../ejb3/PingServlet2Session2Entity2JSP.java | 106 + .../PingServlet2Session2EntityCollection.java | 123 + .../web/prims/ejb3/PingServlet2TwoPhase.java | 118 + .../web/prims/http2/PingServletPush.java | 73 + .../web/prims/http2/PingServletSimple.java | 55 + .../web/prims/jaxrs/JAXRSSyncService.java | 63 + .../web/prims/jaxrs/ObjectFactory.java | 28 + .../web/prims/jaxrs/TestJSONObject.java | 134 + .../daytrader/web/prims/jaxrs/XMLObject.java | 152 + .../web/servlet/OrdersAlertFilter.java | 116 + .../daytrader/web/servlet/PrimFilter.java | 68 + .../daytrader/web/servlet/TestServlet.java | 122 + .../web/servlet/TradeAppServlet.java | 221 ++ .../web/servlet/TradeConfigServlet.java | 292 ++ .../web/servlet/TradeScenarioServlet.java | 297 ++ .../web/servlet/TradeServletAction.java | 654 +++++ .../web/servlet/TradeWebContextListener.java | 116 + .../web/websocket/ActionDecoder.java | 57 + .../web/websocket/ActionMessage.java | 85 + .../daytrader/web/websocket/JsonDecoder.java | 57 + .../daytrader/web/websocket/JsonEncoder.java | 46 + .../daytrader/web/websocket/JsonMessage.java | 40 + .../web/websocket/MarketSummaryWebSocket.java | 161 + .../QuotePriceChangeListEncoder.java | 67 + .../main/liberty/config/bootstrap.properties | 2 + .../src/main/liberty/config/server.env | 2 + .../src/main/liberty/config/server.xml | 79 + .../src/main/liberty/config/server.xml_db2 | 74 + .../src/main/webapp/META-INF/LICENSE | 202 ++ .../src/main/webapp/META-INF/MANIFEST.MF | 5 + .../src/main/webapp/PingCDIJSF.xhtml | 39 + .../daytrader8/src/main/webapp/PingHtml.html | 29 + .../daytrader8/src/main/webapp/PingJsf.xhtml | 145 + .../daytrader8/src/main/webapp/PingJsp.jsp | 39 + .../daytrader8/src/main/webapp/PingJspEL.jsp | 124 + .../src/main/webapp/PingServlet2Jsp.jsp | 39 + .../src/main/webapp/PingWebSocketBinary.html | 92 + .../src/main/webapp/PingWebSocketJson.html | 112 + .../main/webapp/PingWebSocketTextAsync.html | 90 + .../main/webapp/PingWebSocketTextSync.html | 90 + .../main/webapp/WAS_V7_64-bit_performance.pdf | Bin 0 -> 943593 bytes .../src/main/webapp/WEB-INF/beans.xml | 22 + .../WEB-INF/classes/META-INF/DEPENDENCIES | 15 + .../webapp/WEB-INF/classes/META-INF/LICENSE | 202 ++ .../webapp/WEB-INF/classes/META-INF/NOTICE | 8 + .../WEB-INF/classes/META-INF/persistence.xml | 34 + .../webapp/WEB-INF/classes/build.properties | 16 + .../webapp/WEB-INF/classes/persistence.xml | 34 + .../src/main/webapp/WEB-INF/ejb-jar.xml | 446 +++ .../src/main/webapp/WEB-INF/faces-config.xml | 120 + .../src/main/webapp/WEB-INF/ibm-web-bnd.xml | 28 + .../src/main/webapp/WEB-INF/ibm-web-ext.xml | 26 + .../src/main/webapp/WEB-INF/web.xml | 215 ++ .../daytrader8/src/main/webapp/account.jsp | 392 +++ .../daytrader8/src/main/webapp/account.xhtml | 430 +++ .../daytrader8/src/main/webapp/accountImg.jsp | 409 +++ .../daytrader8/src/main/webapp/config.jsp | 251 ++ .../daytrader8/src/main/webapp/config.xhtml | 232 ++ .../daytrader8/src/main/webapp/configure.html | 115 + .../src/main/webapp/configure.xhtml | 148 + .../src/main/webapp/contentHome.html | 87 + .../src/main/webapp/dbscripts/db2/Table.ddl | 289 ++ .../src/main/webapp/dbscripts/derby/Table.ddl | 104 + .../main/webapp/dbscripts/oracle/Table.ddl | 103 + .../src/main/webapp/docs/benchmarking.html | 67 + .../src/main/webapp/docs/documentation.html | 67 + .../src/main/webapp/docs/glossary.html | 98 + .../main/webapp/docs/rtCharacterisitics.html | 158 + .../src/main/webapp/docs/tradeFAQ.html | 190 ++ .../src/main/webapp/docs/tradeFAQ.xhtml | 209 ++ .../src/main/webapp/docs/tradeversion.html | 24 + .../daytrader8/src/main/webapp/error.jsp | 122 + .../daytrader8/src/main/webapp/favicon.ico | Bin 0 -> 2404 bytes .../daytrader8/src/main/webapp/footer.html | 38 + .../daytrader8/src/main/webapp/header.html | 96 + .../main/webapp/images/DayTraderHead_blue.gif | Bin 0 -> 3908 bytes .../main/webapp/images/DayTraderHead_red.gif | Bin 0 -> 3734 bytes .../src/main/webapp/images/Thumbs.db | Bin 0 -> 51200 bytes .../src/main/webapp/images/about.gif | Bin 0 -> 1311 bytes .../src/main/webapp/images/account.gif | Bin 0 -> 2241 bytes .../src/main/webapp/images/arrowdown.gif | Bin 0 -> 197 bytes .../src/main/webapp/images/arrowup.gif | Bin 0 -> 198 bytes .../src/main/webapp/images/bottomRedBar.gif | Bin 0 -> 108 bytes .../src/main/webapp/images/configuration.gif | Bin 0 -> 1430 bytes .../src/main/webapp/images/dayTraderLogo.gif | Bin 0 -> 3774 bytes .../webapp/images/daytrader_simple_arch.gif | Bin 0 -> 43988 bytes .../daytrader8/src/main/webapp/images/faq.gif | Bin 0 -> 1156 bytes .../src/main/webapp/images/favicon.ico | Bin 0 -> 2404 bytes .../src/main/webapp/images/graph.gif | Bin 0 -> 1123 bytes .../src/main/webapp/images/home.gif | Bin 0 -> 1185 bytes .../src/main/webapp/images/homeBanner.gif | Bin 0 -> 1184 bytes .../src/main/webapp/images/line.gif | Bin 0 -> 2346 bytes .../src/main/webapp/images/logout.gif | Bin 0 -> 2191 bytes .../src/main/webapp/images/lower_banner.gif | Bin 0 -> 2378 bytes .../src/main/webapp/images/menuHome.gif | Bin 0 -> 2096 bytes .../src/main/webapp/images/nav_bg.png | Bin 0 -> 938 bytes .../src/main/webapp/images/portfolio.gif | Bin 0 -> 2273 bytes .../src/main/webapp/images/primitives.gif | Bin 0 -> 1213 bytes .../src/main/webapp/images/quotes.gif | Bin 0 -> 2236 bytes .../src/main/webapp/images/reports.gif | Bin 0 -> 1220 bytes .../src/main/webapp/images/spacer.gif | Bin 0 -> 43 bytes .../src/main/webapp/images/ticker-anim.gif | Bin 0 -> 6035 bytes .../src/main/webapp/images/topRedBar.gif | Bin 0 -> 279 bytes .../src/main/webapp/images/topline.jpg | Bin 0 -> 645 bytes .../src/main/webapp/images/tradeOverview.png | Bin 0 -> 206781 bytes .../webapp/images/tradingAndPortfolios.gif | Bin 0 -> 1677 bytes .../daytrader8/src/main/webapp/index.html | 37 + .../daytrader8/src/main/webapp/index.xhtml | 93 + .../daytrader8/src/main/webapp/leftMenu.html | 56 + .../src/main/webapp/marketSummary.html | 283 ++ .../src/main/webapp/marketSummary.jsp | 156 + .../src/main/webapp/marketSummary.xhtml | 605 ++++ .../daytrader8/src/main/webapp/order.jsp | 233 ++ .../daytrader8/src/main/webapp/order.xhtml | 308 ++ .../daytrader8/src/main/webapp/orderImg.jsp | 248 ++ .../daytrader8/src/main/webapp/portfolio.jsp | 284 ++ .../src/main/webapp/portfolio.xhtml | 340 +++ .../src/main/webapp/portfolioImg.jsp | 296 ++ .../webapp/properties/daytrader.properties | 24 + .../daytrader8/src/main/webapp/quote.jsp | 234 ++ .../daytrader8/src/main/webapp/quote.xhtml | 291 ++ .../src/main/webapp/quoteDataPrimitive.jsp | 50 + .../daytrader8/src/main/webapp/quoteImg.jsp | 255 ++ .../daytrader8/src/main/webapp/quotes.html | 158 + .../daytrader8/src/main/webapp/register.jsp | 169 ++ .../daytrader8/src/main/webapp/register.xhtml | 205 ++ .../src/main/webapp/registerImg.jsp | 172 ++ .../daytrader8/src/main/webapp/runStats.jsp | 445 +++ .../daytrader8/src/main/webapp/sample.jsp | 26 + .../daytrader8/src/main/webapp/style-jsf.css | 253 ++ .../daytrader8/src/main/webapp/style.css | 82 + .../daytrader8/src/main/webapp/tradehome.jsp | 251 ++ .../src/main/webapp/tradehome.xhtml | 283 ++ .../src/main/webapp/tradehomeImg.jsp | 267 ++ .../daytrader8/src/main/webapp/web_prmtv.html | 449 +++ .../src/main/webapp/web_prmtv.xhtml | 584 ++++ .../daytrader8/src/main/webapp/welcome.jsp | 133 + .../daytrader8/src/main/webapp/welcome.xhtml | 93 + .../daytrader8/src/main/webapp/welcomeImg.jsp | 132 + .../daytrader8/zos_db2_files/RUNSTAT.JCL | 23 + .../daytrader8/zos_db2_files/dbbind.jcl | 42 + .../daytrader8/zos_db2_files/dbtable.jcl | 255 ++ .../plantsbywebsphere/build.gradle | 49 +- .../gradle/wrapper/gradle-wrapper.properties | 2 +- .../plantsbywebsphere/gradlew | 2 +- .../plantsbywebsphere/gradlew.bat | 168 +- 416 files changed, 45651 insertions(+), 405 deletions(-) delete mode 100644 .github/ISSUE_TEMPLATE/bug_report.md delete mode 100644 .github/ISSUE_TEMPLATE/feature_request.md delete mode 100644 .github/ISSUE_TEMPLATE/user_story.md delete mode 100644 .github/workflows/main.yml delete mode 100644 src/main/java/com/ibm/cldk/analysis/jakarta/JPACRUDFinder.java delete mode 100644 src/main/java/com/ibm/cldk/analysis/utils/enums/CRUDQueryType.java rename src/main/java/com/ibm/cldk/{analysis => javaee}/CRUDFinderFactory.java (80%) rename src/main/java/com/ibm/cldk/{analysis => javaee}/EntrypointsFinderFactory.java (68%) rename src/main/java/com/ibm/cldk/{analysis => javaee}/camel/CamelEntrypointFinder.java (81%) create mode 100644 src/main/java/com/ibm/cldk/javaee/jakarta/JPACRUDFinder.java rename src/main/java/com/ibm/cldk/{analysis => javaee}/jakarta/JakartaEntrypointFinder.java (81%) rename src/main/java/com/ibm/cldk/{analysis => javaee}/jdbc/JDBCCRUDFinder.java (65%) rename src/main/java/com/ibm/cldk/{analysis => javaee}/spring/SpringCRUDFinder.java (71%) rename src/main/java/com/ibm/cldk/{analysis => javaee}/spring/SpringEntrypointFinder.java (81%) rename src/main/java/com/ibm/cldk/{analysis => javaee}/struts/StrutsEntrypointFinder.java (74%) rename src/main/java/com/ibm/cldk/{analysis => javaee}/utils/enums/CRUDOperationType.java (65%) create mode 100644 src/main/java/com/ibm/cldk/javaee/utils/enums/CRUDQueryType.java create mode 100644 src/main/java/com/ibm/cldk/javaee/utils/enums/JPAQueryMethod.java rename src/main/java/com/ibm/cldk/{analysis => javaee/utils}/interfaces/AbstractCRUDFinder.java (54%) rename src/main/java/com/ibm/cldk/{analysis => javaee/utils}/interfaces/AbstractEntrypointFinder.java (93%) create mode 100644 src/main/java/com/ibm/cldk/utils/annotations/Note.java create mode 100644 src/test/resources/test-applications/daytrader8/Dockerfile create mode 100644 src/test/resources/test-applications/daytrader8/Dockerfile-db2 create mode 100644 src/test/resources/test-applications/daytrader8/LICENSE create mode 100644 src/test/resources/test-applications/daytrader8/README.md create mode 100644 src/test/resources/test-applications/daytrader8/README_LOAD_TEST.md create mode 100644 src/test/resources/test-applications/daytrader8/jmeter_files/README.txt create mode 100644 src/test/resources/test-applications/daytrader8/jmeter_files/daytrader8.jmx create mode 100755 src/test/resources/test-applications/daytrader8/jmeter_files/daytrader8_mojarra.jmx create mode 100644 src/test/resources/test-applications/daytrader8/jmeter_files/daytrader8_mojarra_no_ws.jmx create mode 100644 src/test/resources/test-applications/daytrader8/jmeter_files/daytrader8_no_ws.jmx create mode 100644 src/test/resources/test-applications/daytrader8/jmeter_files/daytrader_primitive.jmx create mode 100644 src/test/resources/test-applications/daytrader8/pom.xml create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/README_DO_NOT_TOUCH_FILES.txt create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/log/README_DO_NOT_TOUCH_FILES.txt create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/log/log.ctrl create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/log/log286.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/log/logmirror.ctrl create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/README_DO_NOT_TOUCH_FILES.txt create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c10.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c101.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c111.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c121.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c130.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c141.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c150.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c161.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c171.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c180.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c191.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c1a1.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c1b1.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c1c0.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c1d1.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c1e0.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c1f1.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c20.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c200.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c211.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c221.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c230.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c241.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c251.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c260.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c271.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c281.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c290.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c2a1.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c2b1.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c2c1.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c2d0.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c2e1.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c2f0.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c300.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c31.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c311.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c321.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c331.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c340.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c351.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c361.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c371.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c380.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c391.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c3a1.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c3b1.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c3c0.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c3d1.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c3e1.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c3f1.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c400.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c41.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c411.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c421.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c430.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c441.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c451.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c461.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c470.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c481.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c490.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c4a1.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c4b0.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c4c1.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c4d0.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c4e1.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c4f1.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c51.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c60.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c71.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c720.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c731.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c740.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c751.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c760.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c771.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c780.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c791.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c7a0.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c7b1.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c7c0.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c7d1.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c7e1.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c7f1.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c801.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c81.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c811.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c821.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c90.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/ca1.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/cb1.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/cc0.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/cd1.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/ce1.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/cf0.dat create mode 100644 src/test/resources/test-applications/daytrader8/resources/data/tradedb/service.properties create mode 100755 src/test/resources/test-applications/daytrader8/scripts/buildAll.sh create mode 100755 src/test/resources/test-applications/daytrader8/scripts/switchFromPayara.sh create mode 100755 src/test/resources/test-applications/daytrader8/scripts/switchFromWF.sh create mode 100755 src/test/resources/test-applications/daytrader8/scripts/switchToPayara.sh create mode 100755 src/test/resources/test-applications/daytrader8/scripts/switchToWF.sh create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/META-INF/DEPENDENCIES create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/META-INF/LICENSE create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/build.properties create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/beans/MarketSummaryDataBean.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/beans/RunStatsDataBean.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/entities/AccountDataBean.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/entities/AccountProfileDataBean.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/entities/HoldingDataBean.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/entities/OrderDataBean.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/entities/QuoteDataBean.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/impl/direct/AsyncOrder.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/impl/direct/AsyncOrderSubmitter.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/impl/direct/KeySequenceDirect.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/impl/direct/TradeDirect.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/impl/direct/TradeDirectDBUtils.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/impl/ejb3/AsyncScheduledOrder.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/impl/ejb3/AsyncScheduledOrderSubmitter.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/impl/ejb3/MarketSummarySingleton.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/impl/ejb3/TradeSLSBBean.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/impl/session2direct/DirectSLSBBean.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/interfaces/MarketSummaryUpdate.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/interfaces/QuotePriceChange.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/interfaces/RuntimeMode.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/interfaces/Trace.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/interfaces/TradeDB.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/interfaces/TradeEJB.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/interfaces/TradeJDBC.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/interfaces/TradeServices.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/interfaces/TradeSession2Direct.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/jaxrs/BroadcastResource.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/jaxrs/JAXRSApplication.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/jaxrs/QuoteResource.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/mdb/DTBroker3MDB.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/mdb/DTStreamer3MDB.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/util/Diagnostics.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/util/FinancialUtils.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/util/KeyBlock.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/util/Log.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/util/MDBStats.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/util/RecentQuotePriceChangeList.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/util/TimerStat.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/util/TraceInterceptor.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/util/TradeConfig.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/util/TradeRunTimeModeLiteral.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/jsf/AccountDataJSF.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/jsf/HoldingData.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/jsf/JSFLoginFilter.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/jsf/LoginValidator.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/jsf/MarketSummaryJSF.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/jsf/OrderData.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/jsf/OrderDataJSF.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/jsf/PortfolioJSF.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/jsf/QuoteData.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/jsf/QuoteJSF.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/jsf/TradeAppJSF.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/jsf/TradeConfigJSF.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/ExplicitGC.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingBean.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingJDBCRead.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingJDBCRead2JSP.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingJDBCWrite.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingJSONPObject.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingJSONPObjectFactory.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingJSONPStreaming.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingManagedExecutor.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingManagedThread.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingReentryServlet.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingServlet.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingServlet2DB.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingServlet2Include.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingServlet2IncludeRcv.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingServlet2JNDI.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingServlet2Jsp.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingServlet2PDF.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingServlet2Servlet.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingServlet2ServletRcv.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingServlet30Async.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingServlet31Async.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingServlet31AsyncRead.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingServletLargeContentLength.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingServletSetContentLength.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingServletWriter.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingSession1.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingSession2.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingSession3.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingSession3Object.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingUpgradeServlet.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingWebSocketBinary.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingWebSocketJson.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingWebSocketTextAsync.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingWebSocketTextSync.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/beanval/CDIMethodConstraintBean.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/beanval/PingServletBeanValCDI.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/beanval/PingServletBeanValSimple1.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/beanval/PingServletBeanValSimple2.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/beanval/SimpleBean1.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/beanval/SimpleBean2.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/cdi/CDIEventProducer.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/cdi/Hit.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/cdi/HitAsync.java create mode 100755 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/cdi/PingCDIBean.java create mode 100755 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/cdi/PingCDIJSFBean.java create mode 100755 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/cdi/PingEJBIFace.java create mode 100755 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/cdi/PingEJBLocal.java create mode 100755 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/cdi/PingEJBLocalDecorator.java create mode 100755 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/cdi/PingInterceptor.java create mode 100755 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/cdi/PingInterceptorBinding.java create mode 100755 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/cdi/PingServletCDI.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/cdi/PingServletCDIBeanManagerViaCDICurrent.java create mode 100755 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/cdi/PingServletCDIBeanManagerViaJNDI.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/cdi/PingServletCDIEvent.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/cdi/PingServletCDIEventAsync.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/drive/PingServletDrive.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/ejb3/PingServlet2Entity.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/ejb3/PingServlet2MDBQueue.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/ejb3/PingServlet2MDBTopic.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/ejb3/PingServlet2Session.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/ejb3/PingServlet2Session2CMROne2Many.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/ejb3/PingServlet2Session2CMROne2One.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/ejb3/PingServlet2Session2Entity.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/ejb3/PingServlet2Session2Entity2JSP.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/ejb3/PingServlet2Session2EntityCollection.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/ejb3/PingServlet2TwoPhase.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/http2/PingServletPush.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/http2/PingServletSimple.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/jaxrs/JAXRSSyncService.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/jaxrs/ObjectFactory.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/jaxrs/TestJSONObject.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/jaxrs/XMLObject.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/servlet/OrdersAlertFilter.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/servlet/PrimFilter.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/servlet/TestServlet.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/servlet/TradeAppServlet.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/servlet/TradeConfigServlet.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/servlet/TradeScenarioServlet.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/servlet/TradeServletAction.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/servlet/TradeWebContextListener.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/websocket/ActionDecoder.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/websocket/ActionMessage.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/websocket/JsonDecoder.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/websocket/JsonEncoder.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/websocket/JsonMessage.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/websocket/MarketSummaryWebSocket.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/websocket/QuotePriceChangeListEncoder.java create mode 100644 src/test/resources/test-applications/daytrader8/src/main/liberty/config/bootstrap.properties create mode 100644 src/test/resources/test-applications/daytrader8/src/main/liberty/config/server.env create mode 100644 src/test/resources/test-applications/daytrader8/src/main/liberty/config/server.xml create mode 100644 src/test/resources/test-applications/daytrader8/src/main/liberty/config/server.xml_db2 create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/META-INF/LICENSE create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/META-INF/MANIFEST.MF create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/PingCDIJSF.xhtml create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/PingHtml.html create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/PingJsf.xhtml create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/PingJsp.jsp create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/PingJspEL.jsp create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/PingServlet2Jsp.jsp create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/PingWebSocketBinary.html create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/PingWebSocketJson.html create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/PingWebSocketTextAsync.html create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/PingWebSocketTextSync.html create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/WAS_V7_64-bit_performance.pdf create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/WEB-INF/beans.xml create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/WEB-INF/classes/META-INF/DEPENDENCIES create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/WEB-INF/classes/META-INF/LICENSE create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/WEB-INF/classes/META-INF/NOTICE create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/WEB-INF/classes/META-INF/persistence.xml create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/WEB-INF/classes/build.properties create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/WEB-INF/classes/persistence.xml create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/WEB-INF/ejb-jar.xml create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/WEB-INF/faces-config.xml create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/WEB-INF/ibm-web-bnd.xml create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/WEB-INF/ibm-web-ext.xml create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/WEB-INF/web.xml create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/account.jsp create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/account.xhtml create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/accountImg.jsp create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/config.jsp create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/config.xhtml create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/configure.html create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/configure.xhtml create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/contentHome.html create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/dbscripts/db2/Table.ddl create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/dbscripts/derby/Table.ddl create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/dbscripts/oracle/Table.ddl create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/docs/benchmarking.html create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/docs/documentation.html create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/docs/glossary.html create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/docs/rtCharacterisitics.html create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/docs/tradeFAQ.html create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/docs/tradeFAQ.xhtml create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/docs/tradeversion.html create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/error.jsp create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/favicon.ico create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/footer.html create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/header.html create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/images/DayTraderHead_blue.gif create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/images/DayTraderHead_red.gif create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/images/Thumbs.db create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/images/about.gif create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/images/account.gif create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/images/arrowdown.gif create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/images/arrowup.gif create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/images/bottomRedBar.gif create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/images/configuration.gif create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/images/dayTraderLogo.gif create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/images/daytrader_simple_arch.gif create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/images/faq.gif create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/images/favicon.ico create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/images/graph.gif create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/images/home.gif create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/images/homeBanner.gif create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/images/line.gif create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/images/logout.gif create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/images/lower_banner.gif create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/images/menuHome.gif create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/images/nav_bg.png create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/images/portfolio.gif create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/images/primitives.gif create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/images/quotes.gif create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/images/reports.gif create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/images/spacer.gif create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/images/ticker-anim.gif create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/images/topRedBar.gif create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/images/topline.jpg create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/images/tradeOverview.png create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/images/tradingAndPortfolios.gif create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/index.html create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/index.xhtml create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/leftMenu.html create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/marketSummary.html create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/marketSummary.jsp create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/marketSummary.xhtml create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/order.jsp create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/order.xhtml create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/orderImg.jsp create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/portfolio.jsp create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/portfolio.xhtml create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/portfolioImg.jsp create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/properties/daytrader.properties create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/quote.jsp create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/quote.xhtml create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/quoteDataPrimitive.jsp create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/quoteImg.jsp create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/quotes.html create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/register.jsp create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/register.xhtml create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/registerImg.jsp create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/runStats.jsp create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/sample.jsp create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/style-jsf.css create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/style.css create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/tradehome.jsp create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/tradehome.xhtml create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/tradehomeImg.jsp create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/web_prmtv.html create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/web_prmtv.xhtml create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/welcome.jsp create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/welcome.xhtml create mode 100644 src/test/resources/test-applications/daytrader8/src/main/webapp/welcomeImg.jsp create mode 100644 src/test/resources/test-applications/daytrader8/zos_db2_files/RUNSTAT.JCL create mode 100644 src/test/resources/test-applications/daytrader8/zos_db2_files/dbbind.jcl create mode 100644 src/test/resources/test-applications/daytrader8/zos_db2_files/dbtable.jcl diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md deleted file mode 100644 index e63507ad..00000000 --- a/.github/ISSUE_TEMPLATE/bug_report.md +++ /dev/null @@ -1,43 +0,0 @@ ---- -name: Bug report -about: Create a report to help us improve -title: '' -labels: '' -assignees: '' - ---- - -### Describe the bug - -A clear and concise description of what the bug is. - -### Steps To Reproduce - -Steps to reproduce the behavior: -1. Go to '...' -2. Click on '....' -3. Scroll down to '....' -4. See error - -### Observed behavior - -Describe what you saw and why you think it's a bug? - -### Expected behavior - -A clear and concise description of what you expected to happen. - -### Screenshots - -If applicable, add screenshots to help explain your problem. - -### Environment (please complete the following information): - -- OS: [e.g. macOS 15.1 | Windows 11] - - Version of Java - - Version of Maven - - Version of Gradle - -### Additional context - -Add any other context about the problem here. diff --git a/.github/ISSUE_TEMPLATE/feature_request.md b/.github/ISSUE_TEMPLATE/feature_request.md deleted file mode 100644 index 5df86d28..00000000 --- a/.github/ISSUE_TEMPLATE/feature_request.md +++ /dev/null @@ -1,24 +0,0 @@ ---- -name: Feature request -about: Suggest an idea for this project -title: '' -labels: '' -assignees: '' - ---- - -### Is your feature request related to a problem? Please describe - -A clear and concise description of what the problem is. Ex. I'm always frustrated when [...] - -### Describe the solution you'd like - -A clear and concise description of what you want to happen. - -### Describe alternatives you've considered - -A clear and concise description of any alternative solutions or features you've considered. - -### Additional context - -Add any other context or screenshots about the feature request here. diff --git a/.github/ISSUE_TEMPLATE/user_story.md b/.github/ISSUE_TEMPLATE/user_story.md deleted file mode 100644 index 33bf9b34..00000000 --- a/.github/ISSUE_TEMPLATE/user_story.md +++ /dev/null @@ -1,26 +0,0 @@ ---- -name: User Story -about: Use this for creating User Stories -title: '' -labels: '' -assignees: '' - ---- - -### Feature - -**As a** [role] -**I need** [functionality] -**So that** [benefit] - -### Details & Assumptions - -- document what you know here... - -### Acceptance Criteria - -```gherkin -Given [some initial state] -When [some event] -Then [some measurable outcome] -``` diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml deleted file mode 100644 index bec85d1e..00000000 --- a/.github/workflows/main.yml +++ /dev/null @@ -1,57 +0,0 @@ -name: Codeanalyzer CI - -on: - push: - branches: - - main - -permissions: - contents: write - -jobs: - build-and-package: - runs-on: ubuntu-latest - - env: - JAVA_HOME: ${{ github.workspace }}/graalvm-ce-java11-22.3.3 - - steps: - - name: Check out code - uses: actions/checkout@v4 - with: - persist-credentials: true - - - name: Set up JDK 11 from GraalVM - run: | - echo "${{ env.JAVA_HOME }}/bin" >> $GITHUB_PATH - wget https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-22.3.3/graalvm-ce-java11-linux-amd64-22.3.3.tar.gz - tar -xvzf graalvm-ce-java11-linux-amd64-22.3.3.tar.gz - ${{ env.JAVA_HOME }}/bin/gu install native-image - - - name: Make gradlew executable - run: chmod +x ./gradlew - - - name: Build with Gradle - run: ./gradlew clean fatJar - - - name: Determine new tag - id: newtag - run: | - VERSION=$(java -jar build/libs/*.jar --version | awk '{print $1}') - TAG="v$VERSION" - echo "tag=$TAG" >> $GITHUB_OUTPUT - - - name: Create Git Tag - run: | - git config --global user.name 'GitHub Actions' - git config --global user.email 'actions@github.com' - git tag ${{ steps.newtag.outputs.tag }} - git push origin ${{ steps.newtag.outputs.tag }} - - - name: Publish Release - uses: softprops/action-gh-release@v1 - with: - files: build/libs/*.jar - tag_name: ${{ steps.newtag.outputs.tag }} - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} diff --git a/gradle.properties b/gradle.properties index 29e611a5..76acd457 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1 +1 @@ -version=2.1.0-dev \ No newline at end of file +version=2.2.0-dev \ No newline at end of file diff --git a/src/main/java/com/ibm/cldk/SymbolTable.java b/src/main/java/com/ibm/cldk/SymbolTable.java index cc72adb6..670b247e 100644 --- a/src/main/java/com/ibm/cldk/SymbolTable.java +++ b/src/main/java/com/ibm/cldk/SymbolTable.java @@ -27,10 +27,9 @@ import com.github.javaparser.utils.SourceRoot; import com.google.common.collect.Table; import com.google.common.collect.Tables; -import com.ibm.cldk.analysis.CRUDFinderFactory; -import com.ibm.cldk.analysis.interfaces.AbstractCRUDFinder; -import com.ibm.cldk.analysis.utils.enums.CRUDOperationType; -import com.ibm.cldk.analysis.utils.enums.CRUDQueryType; +import com.ibm.cldk.javaee.CRUDFinderFactory; +import com.ibm.cldk.javaee.utils.enums.CRUDOperationType; +import com.ibm.cldk.javaee.utils.enums.CRUDQueryType; import com.ibm.cldk.entities.*; import com.ibm.cldk.utils.Log; import org.apache.commons.lang3.tuple.Pair; @@ -689,18 +688,27 @@ private static List getCallSites(Optional callableBody) { } // resolve arguments of the method call to types List arguments = methodCallExpr.getArguments().stream().map(SymbolTable::resolveExpression).collect(Collectors.toList()); - + // Get argument string from the callsite + List listOfArgumentStrings = methodCallExpr.getArguments().stream().map(Expression::toString).collect(Collectors.toList()); // Determine if this call site is potentially a CRUD operation. - CRUDOperation crudOperation = null; + CRUDOperation crudOperation = new CRUDOperation(); Optional crudOperationType = findCRUDOperation(declaringType, methodCallExpr.getNameAsString()); if (crudOperationType.isPresent()) { // We found a CRUD operation, so we need to populate the details of the call site this CRUD operation. int lineNumber = methodCallExpr.getRange().isPresent() ? methodCallExpr.getRange().get().begin.line : -1; - crudOperation = new CRUDOperation(lineNumber, crudOperationType.get()); + crudOperation.setLineNumber(lineNumber); + crudOperation.setOperationType(crudOperationType.get()); } // Determine if this call site is potentially a CRUD query. - CRUDQuery crudQuery = null; - Optional crudQueryType = findCRUDQuery(declaringType, methodCallExpr.getNameAsString()); + CRUDQuery crudQuery = new CRUDQuery(); + Optional crudQueryType = findCRUDQuery(declaringType, methodCallExpr.getNameAsString(), Optional.of(listOfArgumentStrings)); + if (crudQueryType.isPresent()) { + // We found a CRUD query, so we need to populate the details of the call site this CRUD query. + int lineNumber = methodCallExpr.getRange().isPresent() ? methodCallExpr.getRange().get().begin.line : -1; + crudQuery.setLineNumber(lineNumber); + crudQuery.setQueryType(crudQueryType.get()); + crudQuery.setQueryArguments(listOfArgumentStrings); + } // add a new call site object callSites.add(createCallSite(methodCallExpr, methodCallExpr.getNameAsString(), receiverName, declaringType, arguments, returnType, calleeSignature, isStaticCall, false, crudOperation, crudQuery, accessSpecifier)); } @@ -726,16 +734,19 @@ private static List getCallSites(Optional callableBody) { return callSites; } - - private static Optional findCRUDQuery(String declaringType, String nameAsString) { +@SuppressWarnings("OptionalUsedAsFieldOrParameterType") + private static Optional findCRUDQuery(String declaringType, String nameAsString, Optional> arguments) { return CRUDFinderFactory.getCRUDFinders().map( finder -> { - if (finder.isReadQuery(declaringType, nameAsString)) { + if (finder.isReadQuery(declaringType, nameAsString, arguments)) { return CRUDQueryType.READ; } - else if (finder.isWriteQuery(declaringType, nameAsString)) { + else if (finder.isWriteQuery(declaringType, nameAsString, arguments)) { return CRUDQueryType.WRITE; } + else if (finder.isNamedQuery(declaringType, nameAsString, arguments)) { + return CRUDQueryType.NAMED; + } else return null; }) @@ -805,6 +816,8 @@ private static CallSite createCallSite( callSite.setPublic(accessSpecifier.equals(AccessSpecifier.PUBLIC)); callSite.setProtected(accessSpecifier.equals(AccessSpecifier.PROTECTED)); callSite.setUnspecified(accessSpecifier.equals(AccessSpecifier.NONE)); + callSite.setCrudOperation(crudOperation); + callSite.setCrudQuery(crudQuery); if (callExpr.getRange().isPresent()) { callSite.setStartLine(callExpr.getRange().get().begin.line); callSite.setStartColumn(callExpr.getRange().get().begin.column); diff --git a/src/main/java/com/ibm/cldk/SystemDependencyGraph.java b/src/main/java/com/ibm/cldk/SystemDependencyGraph.java index 06fca3b9..0540fe99 100644 --- a/src/main/java/com/ibm/cldk/SystemDependencyGraph.java +++ b/src/main/java/com/ibm/cldk/SystemDependencyGraph.java @@ -241,7 +241,7 @@ public static List construct( Log.done("There were a total of " + cha.getNumberOfClasses() + " classes of which " + AnalysisUtils.getNumberOfApplicationClasses(cha) + " are application classes."); - // Initialize analysis options + // Initialize javaee options AnalysisOptions options = new AnalysisOptions(); Iterable entryPoints = AnalysisUtils.getEntryPoints(cha); options.setEntrypoints(entryPoints); diff --git a/src/main/java/com/ibm/cldk/analysis/jakarta/JPACRUDFinder.java b/src/main/java/com/ibm/cldk/analysis/jakarta/JPACRUDFinder.java deleted file mode 100644 index 75c37e26..00000000 --- a/src/main/java/com/ibm/cldk/analysis/jakarta/JPACRUDFinder.java +++ /dev/null @@ -1,73 +0,0 @@ -package com.ibm.cldk.analysis.jakarta; - -import com.ibm.cldk.analysis.interfaces.AbstractCRUDFinder; - -public class JPACRUDFinder extends AbstractCRUDFinder { - /** - * Detect if the method call is a create operation. - * - * @param receiverType The type of the receiver object. - * @param name The name of the method. - * @return True if the method call is a create operation, false otherwise. - */ - @Override - public boolean isCreateOperation(String receiverType, String name) { - return false; - } - - /** - * Detect if the method call is a delete operation. - * - * @param receiverType The type of the receiver object. - * @param name The name of the method. - * @return True if the method call is a delete operation, false otherwise. - */ - @Override - public boolean isDeleteOperation(String receiverType, String name) { - return false; - } - - /** - * Detect if the method call is an update operation. - * - * @param receiverType The type of the receiver object. - * @param name The name of the method. - * @return True if the method call is an update operation, false otherwise. - */ - @Override - public boolean isUpdateOperation(String receiverType, String name) { - return false; - } - - /** - * Detect if the method call is a read operation. - * - * @param receiverType The type of the receiver object. - * @param name The name of the method. - * @return True if the method call is a read operation, false otherwise. - */ - @Override - public boolean isReadOperation(String receiverType, String name) { - return false; - } - - /** - * @param declaringType - * @param nameAsString - * @return - */ - @Override - public boolean isReadQuery(String declaringType, String nameAsString) { - return false; - } - - /** - * @param declaringType - * @param nameAsString - * @return - */ - @Override - public boolean isWriteQuery(String declaringType, String nameAsString) { - return false; - } -} diff --git a/src/main/java/com/ibm/cldk/analysis/utils/enums/CRUDQueryType.java b/src/main/java/com/ibm/cldk/analysis/utils/enums/CRUDQueryType.java deleted file mode 100644 index 417397ce..00000000 --- a/src/main/java/com/ibm/cldk/analysis/utils/enums/CRUDQueryType.java +++ /dev/null @@ -1,6 +0,0 @@ -package com.ibm.cldk.analysis.utils.enums; - -public enum CRUDQueryType { - READ, - WRITE; -} diff --git a/src/main/java/com/ibm/cldk/entities/CRUDOperation.java b/src/main/java/com/ibm/cldk/entities/CRUDOperation.java index a43e253a..ed5b5564 100644 --- a/src/main/java/com/ibm/cldk/entities/CRUDOperation.java +++ b/src/main/java/com/ibm/cldk/entities/CRUDOperation.java @@ -1,6 +1,6 @@ package com.ibm.cldk.entities; -import com.ibm.cldk.analysis.utils.enums.CRUDOperationType; +import com.ibm.cldk.javaee.utils.enums.CRUDOperationType; import com.ibm.cldk.utils.annotations.NotImplemented; import lombok.AllArgsConstructor; import lombok.Data; diff --git a/src/main/java/com/ibm/cldk/entities/CRUDQuery.java b/src/main/java/com/ibm/cldk/entities/CRUDQuery.java index b3eb6b37..a498660c 100644 --- a/src/main/java/com/ibm/cldk/entities/CRUDQuery.java +++ b/src/main/java/com/ibm/cldk/entities/CRUDQuery.java @@ -1,15 +1,17 @@ package com.ibm.cldk.entities; -import com.ibm.cldk.analysis.utils.enums.CRUDQueryType; +import com.ibm.cldk.javaee.utils.enums.CRUDQueryType; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; +import java.util.List; + @Data @NoArgsConstructor @AllArgsConstructor public class CRUDQuery { private int lineNumber = -1; - private String query; + private List queryArguments; private CRUDQueryType queryType; } diff --git a/src/main/java/com/ibm/cldk/entities/CallSite.java b/src/main/java/com/ibm/cldk/entities/CallSite.java index 7157b817..6381dbbc 100644 --- a/src/main/java/com/ibm/cldk/entities/CallSite.java +++ b/src/main/java/com/ibm/cldk/entities/CallSite.java @@ -4,8 +4,10 @@ import java.util.ArrayList; import java.util.List; +import java.util.Optional; @Data +@SuppressWarnings("OptionalUsedAsFieldOrParameterType") public class CallSite { private String methodName; private String receiverExpr; @@ -21,6 +23,7 @@ public class CallSite { private boolean isStaticCall; private boolean isConstructorCall; private CRUDOperation crudOperation = null; + private CRUDQuery crudQuery = null; private int startLine; private int startColumn; private int endLine; diff --git a/src/main/java/com/ibm/cldk/analysis/CRUDFinderFactory.java b/src/main/java/com/ibm/cldk/javaee/CRUDFinderFactory.java similarity index 80% rename from src/main/java/com/ibm/cldk/analysis/CRUDFinderFactory.java rename to src/main/java/com/ibm/cldk/javaee/CRUDFinderFactory.java index e4386743..a1d6c052 100644 --- a/src/main/java/com/ibm/cldk/analysis/CRUDFinderFactory.java +++ b/src/main/java/com/ibm/cldk/javaee/CRUDFinderFactory.java @@ -1,9 +1,9 @@ -package com.ibm.cldk.analysis; +package com.ibm.cldk.javaee; -import com.ibm.cldk.analysis.interfaces.AbstractCRUDFinder; -import com.ibm.cldk.analysis.jakarta.JPACRUDFinder; -import com.ibm.cldk.analysis.jdbc.JDBCCRUDFinder; -import com.ibm.cldk.analysis.spring.SpringCRUDFinder; +import com.ibm.cldk.javaee.utils.interfaces.AbstractCRUDFinder; +import com.ibm.cldk.javaee.jakarta.JPACRUDFinder; +import com.ibm.cldk.javaee.jdbc.JDBCCRUDFinder; +import com.ibm.cldk.javaee.spring.SpringCRUDFinder; import org.apache.commons.lang3.NotImplementedException; import java.util.stream.Stream; diff --git a/src/main/java/com/ibm/cldk/analysis/EntrypointsFinderFactory.java b/src/main/java/com/ibm/cldk/javaee/EntrypointsFinderFactory.java similarity index 68% rename from src/main/java/com/ibm/cldk/analysis/EntrypointsFinderFactory.java rename to src/main/java/com/ibm/cldk/javaee/EntrypointsFinderFactory.java index 583a2f39..5b081295 100644 --- a/src/main/java/com/ibm/cldk/analysis/EntrypointsFinderFactory.java +++ b/src/main/java/com/ibm/cldk/javaee/EntrypointsFinderFactory.java @@ -1,12 +1,12 @@ -package com.ibm.cldk.analysis; +package com.ibm.cldk.javaee; -import com.ibm.cldk.analysis.interfaces.AbstractCRUDFinder; -import com.ibm.cldk.analysis.interfaces.AbstractEntrypointFinder; -import com.ibm.cldk.analysis.jakarta.JPACRUDFinder; -import com.ibm.cldk.analysis.jakarta.JakartaEntrypointFinder; -import com.ibm.cldk.analysis.jdbc.JDBCCRUDFinder; -import com.ibm.cldk.analysis.spring.SpringCRUDFinder; -import com.ibm.cldk.analysis.struts.StrutsEntrypointFinder; +import com.ibm.cldk.javaee.utils.interfaces.AbstractCRUDFinder; +import com.ibm.cldk.javaee.utils.interfaces.AbstractEntrypointFinder; +import com.ibm.cldk.javaee.jakarta.JPACRUDFinder; +import com.ibm.cldk.javaee.jakarta.JakartaEntrypointFinder; +import com.ibm.cldk.javaee.jdbc.JDBCCRUDFinder; +import com.ibm.cldk.javaee.spring.SpringCRUDFinder; +import com.ibm.cldk.javaee.struts.StrutsEntrypointFinder; import org.apache.commons.lang3.NotImplementedException; import java.util.stream.Stream; diff --git a/src/main/java/com/ibm/cldk/analysis/camel/CamelEntrypointFinder.java b/src/main/java/com/ibm/cldk/javaee/camel/CamelEntrypointFinder.java similarity index 81% rename from src/main/java/com/ibm/cldk/analysis/camel/CamelEntrypointFinder.java rename to src/main/java/com/ibm/cldk/javaee/camel/CamelEntrypointFinder.java index 5374187a..4bd9f2e8 100644 --- a/src/main/java/com/ibm/cldk/analysis/camel/CamelEntrypointFinder.java +++ b/src/main/java/com/ibm/cldk/javaee/camel/CamelEntrypointFinder.java @@ -1,6 +1,6 @@ -package com.ibm.cldk.analysis.camel; +package com.ibm.cldk.javaee.camel; -import com.ibm.cldk.analysis.interfaces.AbstractEntrypointFinder; +import com.ibm.cldk.javaee.utils.interfaces.AbstractEntrypointFinder; import com.ibm.cldk.utils.annotations.NotImplemented; @NotImplemented(comment = "This class is not implemented yet. Leaving this here to refactor entrypoint detection.") diff --git a/src/main/java/com/ibm/cldk/javaee/jakarta/JPACRUDFinder.java b/src/main/java/com/ibm/cldk/javaee/jakarta/JPACRUDFinder.java new file mode 100644 index 00000000..a2d75aa6 --- /dev/null +++ b/src/main/java/com/ibm/cldk/javaee/jakarta/JPACRUDFinder.java @@ -0,0 +1,96 @@ +package com.ibm.cldk.javaee.jakarta; + +import com.ibm.cldk.javaee.utils.enums.CRUDOperationType; +import com.ibm.cldk.javaee.utils.enums.JPAQueryMethod; +import com.ibm.cldk.javaee.utils.interfaces.AbstractCRUDFinder; + +import java.util.List; +import java.util.Optional; + +public class JPACRUDFinder extends AbstractCRUDFinder { + + // Detect CREATE Operation + @Override + public boolean isCreateOperation(String receiverType, String name) { + return receiverType.endsWith("EntityManager") && name.equals("persist"); + } + + // Detect DELETE Operation + @Override + public boolean isDeleteOperation(String receiverType, String name) { + return receiverType.endsWith("EntityManager") && name.equals("remove"); + } + + // Detect UPDATE Operation, including query executions + @Override + public boolean isUpdateOperation(String receiverType, String name) { + if (receiverType.endsWith("Query")) { + Optional operation = JPAQueryMethod.getOperationForMethod(name); + // There's a caveat here because UPDATE/DELETE operations are both represented by the same method. + // See https://github.com/codellm-devkit/codeanalyzer-java/issues/100#issuecomment-2644492440 + return operation.isPresent() && (operation.get() == CRUDOperationType.UPDATE); + } + return receiverType.endsWith("EntityManager") && name.equals("merge"); + } + + // Detect READ Operation, including query executions using the JPAQueryMethod enum + @Override + public boolean isReadOperation(String receiverType, String name) { + if (receiverType.endsWith("EntityManager") && name.equals("find")) { + return true; + } + + if (receiverType.endsWith("Query")) { + Optional operation = JPAQueryMethod.getOperationForMethod(name); + return operation.isPresent() && operation.get() == CRUDOperationType.READ; + } + + return false; + } + + // Detect CRUD Query Creation (Only query definitions, not execution) + @Override + public boolean isCRUDQueryCreation(String declaringType, String methodName) { + return declaringType.endsWith("EntityManager") && + (methodName.equals("createQuery") || methodName.equals("createNamedQuery")); + } + + /** + * @param declaringType + * @param nameAsString + * @param arguments + * @return + */ + @Override + public boolean isReadQuery(String declaringType, String nameAsString, Optional> arguments) { + return isCRUDQueryCreation(declaringType, nameAsString) && arguments.stream().anyMatch(args -> { + String query = args.get(0).toLowerCase(); + return query.startsWith("select"); + }); + } + + /** + * @param declaringType + * @param nameAsString + * @param arguments + * @return + */ + @Override + public boolean isWriteQuery(String declaringType, String nameAsString, Optional> arguments) { + return isCRUDQueryCreation(declaringType, nameAsString) && arguments.stream().anyMatch(args -> { + String query = args.get(0).toLowerCase(); + return query.startsWith("update") || query.startsWith("delete") || query.startsWith("insert"); + }); + } + + /** + * @param declaringType + * @param nameAsString + * @param arguments + * @return + */ + @Override + public boolean isNamedQuery(String declaringType, String nameAsString, Optional> arguments) { + return declaringType.endsWith("EntityManager") && nameAsString.equals("createNamedQuery"); + } +} diff --git a/src/main/java/com/ibm/cldk/analysis/jakarta/JakartaEntrypointFinder.java b/src/main/java/com/ibm/cldk/javaee/jakarta/JakartaEntrypointFinder.java similarity index 81% rename from src/main/java/com/ibm/cldk/analysis/jakarta/JakartaEntrypointFinder.java rename to src/main/java/com/ibm/cldk/javaee/jakarta/JakartaEntrypointFinder.java index 8133c97b..083a7e44 100644 --- a/src/main/java/com/ibm/cldk/analysis/jakarta/JakartaEntrypointFinder.java +++ b/src/main/java/com/ibm/cldk/javaee/jakarta/JakartaEntrypointFinder.java @@ -1,6 +1,6 @@ -package com.ibm.cldk.analysis.jakarta; +package com.ibm.cldk.javaee.jakarta; -import com.ibm.cldk.analysis.interfaces.AbstractEntrypointFinder; +import com.ibm.cldk.javaee.utils.interfaces.AbstractEntrypointFinder; import com.ibm.cldk.utils.annotations.NotImplemented; @NotImplemented(comment = "This class is not implemented yet. Leaving this here to refactor entrypoint detection.") diff --git a/src/main/java/com/ibm/cldk/analysis/jdbc/JDBCCRUDFinder.java b/src/main/java/com/ibm/cldk/javaee/jdbc/JDBCCRUDFinder.java similarity index 65% rename from src/main/java/com/ibm/cldk/analysis/jdbc/JDBCCRUDFinder.java rename to src/main/java/com/ibm/cldk/javaee/jdbc/JDBCCRUDFinder.java index a9604e57..d90e0155 100644 --- a/src/main/java/com/ibm/cldk/analysis/jdbc/JDBCCRUDFinder.java +++ b/src/main/java/com/ibm/cldk/javaee/jdbc/JDBCCRUDFinder.java @@ -1,6 +1,9 @@ -package com.ibm.cldk.analysis.jdbc; +package com.ibm.cldk.javaee.jdbc; -import com.ibm.cldk.analysis.interfaces.AbstractCRUDFinder; +import com.ibm.cldk.javaee.utils.interfaces.AbstractCRUDFinder; + +import java.util.List; +import java.util.Optional; public class JDBCCRUDFinder extends AbstractCRUDFinder { /** @@ -51,23 +54,46 @@ public boolean isReadOperation(String receiverType, String name) { return false; } + /** + * @param declaringType + * @param methodName + * @return + */ + @Override + public boolean isCRUDQueryCreation(String declaringType, String methodName) { + return false; + } + + /** + * @param declaringType + * @param nameAsString + * @param arguments + * @return + */ + @Override + public boolean isReadQuery(String declaringType, String nameAsString, Optional> arguments) { + return false; + } + /** * @param declaringType * @param nameAsString + * @param arguments * @return */ @Override - public boolean isReadQuery(String declaringType, String nameAsString) { + public boolean isWriteQuery(String declaringType, String nameAsString, Optional> arguments) { return false; } /** * @param declaringType * @param nameAsString + * @param arguments * @return */ @Override - public boolean isWriteQuery(String declaringType, String nameAsString) { + public boolean isNamedQuery(String declaringType, String nameAsString, Optional> arguments) { return false; } } diff --git a/src/main/java/com/ibm/cldk/analysis/spring/SpringCRUDFinder.java b/src/main/java/com/ibm/cldk/javaee/spring/SpringCRUDFinder.java similarity index 71% rename from src/main/java/com/ibm/cldk/analysis/spring/SpringCRUDFinder.java rename to src/main/java/com/ibm/cldk/javaee/spring/SpringCRUDFinder.java index 29cea9dd..cdca5556 100644 --- a/src/main/java/com/ibm/cldk/analysis/spring/SpringCRUDFinder.java +++ b/src/main/java/com/ibm/cldk/javaee/spring/SpringCRUDFinder.java @@ -1,6 +1,9 @@ -package com.ibm.cldk.analysis.spring; +package com.ibm.cldk.javaee.spring; -import com.ibm.cldk.analysis.interfaces.AbstractCRUDFinder; +import com.ibm.cldk.javaee.utils.interfaces.AbstractCRUDFinder; + +import java.util.List; +import java.util.Optional; public class SpringCRUDFinder extends AbstractCRUDFinder { /** @@ -51,23 +54,47 @@ public boolean isReadOperation(String receiverType, String name) { return false; } + /** + * @param declaringType + * @param methodName + * @return + */ + @Override + public boolean isCRUDQueryCreation(String declaringType, String methodName) { + return false; + } + /** * @param declaringType * @param nameAsString + * @param arguments * @return */ @Override - public boolean isReadQuery(String declaringType, String nameAsString) { + public boolean isReadQuery(String declaringType, String nameAsString, Optional> arguments) { return false; } /** * @param declaringType * @param nameAsString + * @param arguments * @return */ @Override - public boolean isWriteQuery(String declaringType, String nameAsString) { + public boolean isWriteQuery(String declaringType, String nameAsString, Optional> arguments) { return false; } + + /** + * @param declaringType + * @param nameAsString + * @param arguments + * @return + */ + @Override + public boolean isNamedQuery(String declaringType, String nameAsString, Optional> arguments) { + return false; + } + } diff --git a/src/main/java/com/ibm/cldk/analysis/spring/SpringEntrypointFinder.java b/src/main/java/com/ibm/cldk/javaee/spring/SpringEntrypointFinder.java similarity index 81% rename from src/main/java/com/ibm/cldk/analysis/spring/SpringEntrypointFinder.java rename to src/main/java/com/ibm/cldk/javaee/spring/SpringEntrypointFinder.java index 3e4d938e..f31063fd 100644 --- a/src/main/java/com/ibm/cldk/analysis/spring/SpringEntrypointFinder.java +++ b/src/main/java/com/ibm/cldk/javaee/spring/SpringEntrypointFinder.java @@ -1,6 +1,6 @@ -package com.ibm.cldk.analysis.spring; +package com.ibm.cldk.javaee.spring; -import com.ibm.cldk.analysis.interfaces.AbstractEntrypointFinder; +import com.ibm.cldk.javaee.utils.interfaces.AbstractEntrypointFinder; import com.ibm.cldk.utils.annotations.NotImplemented; @NotImplemented(comment = "This class is not implemented yet. Leaving this here to refactor entrypoint detection.") diff --git a/src/main/java/com/ibm/cldk/analysis/struts/StrutsEntrypointFinder.java b/src/main/java/com/ibm/cldk/javaee/struts/StrutsEntrypointFinder.java similarity index 74% rename from src/main/java/com/ibm/cldk/analysis/struts/StrutsEntrypointFinder.java rename to src/main/java/com/ibm/cldk/javaee/struts/StrutsEntrypointFinder.java index 5f177103..311d248f 100644 --- a/src/main/java/com/ibm/cldk/analysis/struts/StrutsEntrypointFinder.java +++ b/src/main/java/com/ibm/cldk/javaee/struts/StrutsEntrypointFinder.java @@ -1,6 +1,6 @@ -package com.ibm.cldk.analysis.struts; +package com.ibm.cldk.javaee.struts; -import com.ibm.cldk.analysis.interfaces.AbstractEntrypointFinder; +import com.ibm.cldk.javaee.utils.interfaces.AbstractEntrypointFinder; public class StrutsEntrypointFinder extends AbstractEntrypointFinder { @Override diff --git a/src/main/java/com/ibm/cldk/analysis/utils/enums/CRUDOperationType.java b/src/main/java/com/ibm/cldk/javaee/utils/enums/CRUDOperationType.java similarity index 65% rename from src/main/java/com/ibm/cldk/analysis/utils/enums/CRUDOperationType.java rename to src/main/java/com/ibm/cldk/javaee/utils/enums/CRUDOperationType.java index 74225880..13a7dedf 100644 --- a/src/main/java/com/ibm/cldk/analysis/utils/enums/CRUDOperationType.java +++ b/src/main/java/com/ibm/cldk/javaee/utils/enums/CRUDOperationType.java @@ -1,4 +1,4 @@ -package com.ibm.cldk.analysis.utils.enums; +package com.ibm.cldk.javaee.utils.enums; public enum CRUDOperationType { CREATE, diff --git a/src/main/java/com/ibm/cldk/javaee/utils/enums/CRUDQueryType.java b/src/main/java/com/ibm/cldk/javaee/utils/enums/CRUDQueryType.java new file mode 100644 index 00000000..8f95f0f9 --- /dev/null +++ b/src/main/java/com/ibm/cldk/javaee/utils/enums/CRUDQueryType.java @@ -0,0 +1,7 @@ +package com.ibm.cldk.javaee.utils.enums; + +public enum CRUDQueryType { + READ, + WRITE, + NAMED; +} diff --git a/src/main/java/com/ibm/cldk/javaee/utils/enums/JPAQueryMethod.java b/src/main/java/com/ibm/cldk/javaee/utils/enums/JPAQueryMethod.java new file mode 100644 index 00000000..e391821e --- /dev/null +++ b/src/main/java/com/ibm/cldk/javaee/utils/enums/JPAQueryMethod.java @@ -0,0 +1,45 @@ +package com.ibm.cldk.javaee.utils.enums; + +import com.ibm.cldk.utils.annotations.Note; +import lombok.Getter; + +import java.util.Optional; + +@Getter +public enum JPAQueryMethod { + // Read Operations + GET_RESULT_LIST(CRUDOperationType.READ), + GET_SINGLE_RESULT(CRUDOperationType.READ), + GET_FIRST_RESULT(CRUDOperationType.READ), + GET_MAX_RESULTS(CRUDOperationType.READ), + + // Write Operations + @Note("There is a possiblity that the user may execute a delete action using the executeUpdate method. There is no way to differentiate between an update and delete operation without doing a dataflow analysis on the query string because the query string may be defined anywhere in the code. So for now, we are assuming that executeUpdate is an update operation.") + EXECUTE_UPDATE(CRUDOperationType.UPDATE), + + // Non-CRUD Methods (configuration or metadata) + GET_FLUSH_MODE(null), + GET_HINTS(null), + GET_LOCK_MODE(null), + GET_PARAMETER(null), + GET_PARAMETERS(null), + GET_PARAMETER_VALUE(null), + IS_BOUND(null), + UNWRAP(null); + + private final CRUDOperationType crudOperation; + + JPAQueryMethod(CRUDOperationType crudOperation) { + this.crudOperation = crudOperation; + } + + public static Optional getOperationForMethod(String methodName) { + try { + // A small hack to convert camelCase to snake_case and also to uppercase. Basically, we want getSingleResult to get converted to GET_SINGLE_RESULT so as to + // match the enum values conventions. + return Optional.ofNullable(JPAQueryMethod.valueOf(methodName.replaceAll("([a-z])([A-Z]+)", "$1_$2").toUpperCase()).getCrudOperation()); + } catch (IllegalArgumentException e) { + return Optional.empty(); + } + } +} diff --git a/src/main/java/com/ibm/cldk/analysis/interfaces/AbstractCRUDFinder.java b/src/main/java/com/ibm/cldk/javaee/utils/interfaces/AbstractCRUDFinder.java similarity index 54% rename from src/main/java/com/ibm/cldk/analysis/interfaces/AbstractCRUDFinder.java rename to src/main/java/com/ibm/cldk/javaee/utils/interfaces/AbstractCRUDFinder.java index 66b0e4c4..02a331f4 100644 --- a/src/main/java/com/ibm/cldk/analysis/interfaces/AbstractCRUDFinder.java +++ b/src/main/java/com/ibm/cldk/javaee/utils/interfaces/AbstractCRUDFinder.java @@ -1,10 +1,12 @@ -package com.ibm.cldk.analysis.interfaces; +package com.ibm.cldk.javaee.utils.interfaces; import java.util.List; +import java.util.Optional; /** * Abstract base class for finding CRUD operations in various frameworks. */ +@SuppressWarnings("OptionalUsedAsFieldOrParameterType") public abstract class AbstractCRUDFinder { public abstract boolean isCreateOperation(String receiverType, String methodName); @@ -14,7 +16,12 @@ public abstract class AbstractCRUDFinder { public abstract boolean isReadOperation(String receiverType, String methodName); - public abstract boolean isReadQuery(String declaringType, String nameAsString); + // Detect CRUD Query Creation (Only query definitions, not execution) + public abstract boolean isCRUDQueryCreation(String declaringType, String methodName); - public abstract boolean isWriteQuery(String declaringType, String nameAsString); + public abstract boolean isReadQuery(String declaringType, String nameAsString, Optional> arguments); + + public abstract boolean isWriteQuery(String declaringType, String nameAsString, Optional> arguments); + + public abstract boolean isNamedQuery(String declaringType, String nameAsString, Optional> arguments); } diff --git a/src/main/java/com/ibm/cldk/analysis/interfaces/AbstractEntrypointFinder.java b/src/main/java/com/ibm/cldk/javaee/utils/interfaces/AbstractEntrypointFinder.java similarity index 93% rename from src/main/java/com/ibm/cldk/analysis/interfaces/AbstractEntrypointFinder.java rename to src/main/java/com/ibm/cldk/javaee/utils/interfaces/AbstractEntrypointFinder.java index 8dc6aa6f..e3b8f326 100644 --- a/src/main/java/com/ibm/cldk/analysis/interfaces/AbstractEntrypointFinder.java +++ b/src/main/java/com/ibm/cldk/javaee/utils/interfaces/AbstractEntrypointFinder.java @@ -1,4 +1,4 @@ -package com.ibm.cldk.analysis.interfaces; +package com.ibm.cldk.javaee.utils.interfaces; import com.ibm.cldk.utils.annotations.NotImplemented; diff --git a/src/main/java/com/ibm/cldk/utils/BuildProject.java b/src/main/java/com/ibm/cldk/utils/BuildProject.java index 61ca639e..8d961dbf 100644 --- a/src/main/java/com/ibm/cldk/utils/BuildProject.java +++ b/src/main/java/com/ibm/cldk/utils/BuildProject.java @@ -204,7 +204,7 @@ private static boolean mkLibDepDirs(String projectPath) { * Downloads library dependency jars of the given project so that the jars can be used * for type resolution during symbol table creation. * - * @param projectPath Path to the project under analysis + * @param projectPath Path to the project under javaee * @return true if dependency download succeeds; false otherwise */ public static boolean downloadLibraryDependencies(String projectPath, String projectRootPom) throws IOException { diff --git a/src/main/java/com/ibm/cldk/utils/ScopeUtils.java b/src/main/java/com/ibm/cldk/utils/ScopeUtils.java index fe233e9a..b6f6c1e4 100644 --- a/src/main/java/com/ibm/cldk/utils/ScopeUtils.java +++ b/src/main/java/com/ibm/cldk/utils/ScopeUtils.java @@ -43,23 +43,23 @@ public class ScopeUtils { public static String[] stdLibs; /** - * Create an analysis scope base on the input + * Create an javaee scope base on the input * * @param projectPath The root directory of the project to be analyzed. - * @return scope The created analysis scope + * @return scope The created javaee scope * @throws IOException the io exception */ /** - * Create an analysis scope base on the input + * Create an javaee scope base on the input * * @param projectPath The root directory of the project to be analyzed. * @param applicationDeps the application deps - * @return scope The created analysis scope + * @return scope The created javaee scope * @throws IOException the io exception */ public static AnalysisScope createScope(String projectPath, String applicationDeps, String build) throws IOException { - Log.info("Create analysis scope."); + Log.info("Create javaee scope."); AnalysisScope scope = new JavaSourceAnalysisScope(); addDefaultExclusions(scope); @@ -88,7 +88,7 @@ public static AnalysisScope createScope(String projectPath, String applicationDe Objects.requireNonNull(jarFilesStream(applicationDeps)).stream() .forEach( extraLibJar -> { - Log.info("-> Adding dependency " + extraLibJar + " to analysis scope."); + Log.info("-> Adding dependency " + extraLibJar + " to javaee scope."); try { scope.addToScope(ClassLoaderReference.Extension, new JarFile(extraLibJar.toAbsolutePath().toFile())); } catch (IOException e) { diff --git a/src/main/java/com/ibm/cldk/utils/annotations/Note.java b/src/main/java/com/ibm/cldk/utils/annotations/Note.java new file mode 100644 index 00000000..cf12e6fa --- /dev/null +++ b/src/main/java/com/ibm/cldk/utils/annotations/Note.java @@ -0,0 +1,10 @@ +package com.ibm.cldk.utils.annotations; + +import java.lang.annotation.*; + +@Documented +@Target({ElementType.METHOD, ElementType.FIELD, ElementType.TYPE, ElementType.PARAMETER, ElementType.CONSTRUCTOR, ElementType.LOCAL_VARIABLE, ElementType.PACKAGE, ElementType.TYPE_PARAMETER, ElementType.TYPE_USE, ElementType.MODULE, ElementType.ANNOTATION_TYPE}) +@Retention(RetentionPolicy.RUNTIME) +public @interface Note { + String value() default ""; +} diff --git a/src/test/java/com/ibm/cldk/CodeAnalyzerIntegrationTest.java b/src/test/java/com/ibm/cldk/CodeAnalyzerIntegrationTest.java index 0697d936..25f478b6 100644 --- a/src/test/java/com/ibm/cldk/CodeAnalyzerIntegrationTest.java +++ b/src/test/java/com/ibm/cldk/CodeAnalyzerIntegrationTest.java @@ -59,6 +59,7 @@ public class CodeAnalyzerIntegrationTest { BindMode.READ_WRITE) .withCopyFileToContainer(MountableFile.forHostPath(Paths.get(System.getProperty("user.dir")).resolve("build/libs")), "/opt/jars") .withCopyFileToContainer(MountableFile.forHostPath(Paths.get(System.getProperty("user.dir")).resolve("src/test/resources/test-applications/mvnw-corrupt-test")), "/test-applications/mvnw-corrupt-test") + .withCopyFileToContainer(MountableFile.forHostPath(Paths.get(System.getProperty("user.dir")).resolve("src/test/resources/test-applications/plantsbywebsphere")), "/test-applications/plantsbywebsphere") .withCopyFileToContainer(MountableFile.forHostPath(Paths.get(System.getProperty("user.dir")).resolve("src/test/resources/test-applications/mvnw-working-test")), "/test-applications/mvnw-working-test"); @Container @@ -70,7 +71,6 @@ public class CodeAnalyzerIntegrationTest { .withCopyFileToContainer(MountableFile.forHostPath(Paths.get(System.getProperty("user.dir")).resolve("src/test/resources/test-applications/mvnw-working-test")), "/test-applications/mvnw-working-test") .withCopyFileToContainer(MountableFile.forHostPath(Paths.get(System.getProperty("user.dir")).resolve("src/test/resources/test-applications/daytrader8")), "/test-applications/daytrader8"); - @BeforeAll static void setUp() { Properties properties = new Properties(); @@ -140,7 +140,7 @@ void corruptMavenShouldProduceAnalysisArtifactsWhenMVNCommandIsInPath() throws I @Test void corruptMavenShouldNotTerminateWithErrorWhenMavenIsNotPresentUnlessAnalysisLevel2() throws IOException, InterruptedException { - // When analysis level 2, we should get a Runtime Exception + // When javaee level 2, we should get a Runtime Exception var runCodeAnalyzer = container.execInContainer( "java", "-jar", @@ -165,4 +165,19 @@ void shouldBeAbleToGenerateAnalysisArtifactForDaytrader8() throws Exception { Assertions.assertTrue(runCodeAnalyzerOnDaytrader8.getStdout().contains("\"is_entrypoint_class\": true"), "No entry point classes found"); Assertions.assertTrue(runCodeAnalyzerOnDaytrader8.getStdout().contains("\"is_entrypoint\": true"), "No entry point methods found"); } + + @Test + void shouldBeAbleToDetectCRUDOperationsAndQueriesForPlantByWebsphere() throws Exception { + var runCodeAnalyzerOnPlantsByWebsphere = container.execInContainer( + "java", + "-jar", + String.format("/opt/jars/codeanalyzer-%s.jar", codeanalyzerVersion), + "--input=/test-applications/plantsbywebsphere", + "--analysis-level=1", "--verbose" + ); + Assertions.assertTrue(runCodeAnalyzerOnPlantsByWebsphere.getStdout().contains("\"query_type\": \"NAMED\""), "No entry point classes found"); + Assertions.assertTrue(runCodeAnalyzerOnPlantsByWebsphere.getStdout().contains("\"operation_type\": \"READ\""), "No entry point methods found"); + Assertions.assertTrue(runCodeAnalyzerOnPlantsByWebsphere.getStdout().contains("\"operation_type\": \"UPDATE\""), "No entry point methods found"); + Assertions.assertTrue(runCodeAnalyzerOnPlantsByWebsphere.getStdout().contains("\"operation_type\": \"CREATE\""), "No entry point methods found"); + } } \ No newline at end of file diff --git a/src/test/resources/test-applications/daytrader8/Dockerfile b/src/test/resources/test-applications/daytrader8/Dockerfile new file mode 100644 index 00000000..bce5ad82 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/Dockerfile @@ -0,0 +1,14 @@ +FROM open-liberty:full + +COPY --chown=1001:0 src/main/liberty/config/server.xml /config/server.xml +COPY --chown=1001:0 src/main/liberty/config/bootstrap.properties /config/bootstrap.properties +COPY --chown=1001:0 target/io.openliberty.sample.daytrader8.war /config/apps/ + +#Derby +COPY --chown=1001:0 target/liberty/wlp/usr/shared/resources/DerbyLibs/derby-10.14.2.0.jar /opt/ol/wlp/usr/shared/resources/DerbyLibs/derby-10.14.2.0.jar +COPY --chown=1001:0 target/liberty/wlp/usr/shared/resources/data /opt/ol/wlp/usr/shared/resources/data + +ENV MAX_USERS=1000 +ENV MAX_QUOTES=500 + +#RUN configure.sh diff --git a/src/test/resources/test-applications/daytrader8/Dockerfile-db2 b/src/test/resources/test-applications/daytrader8/Dockerfile-db2 new file mode 100644 index 00000000..c32a54e8 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/Dockerfile-db2 @@ -0,0 +1,21 @@ +# Create folder db2jars/ and copy db2jcc4.jar and db2jcc_license_cu.jar to it. +# Set Env below + +FROM open-liberty:full + +COPY --chown=1001:0 src/main/liberty/config/server.xml_db2 /config/server.xml +COPY --chown=1001:0 src/main/liberty/config/bootstrap.properties /config/bootstrap.properties +COPY --chown=1001:0 target/io.openliberty.sample.daytrader8.war /config/apps/ + +# DB2 JARS +COPY --chown=1001:0 /db2jars /opt/ol/wlp/usr/shared/resources/db2jars + +ENV contextRoot=daytrader +ENV dbUser= +ENV dbPass= +ENV tradeDbHost= +ENV tradeDbPort= +ENV tradeDbName= + + +#RUN configure.sh diff --git a/src/test/resources/test-applications/daytrader8/LICENSE b/src/test/resources/test-applications/daytrader8/LICENSE new file mode 100644 index 00000000..8f71f43f --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/LICENSE @@ -0,0 +1,202 @@ + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "{}" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright {yyyy} {name of copyright owner} + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + diff --git a/src/test/resources/test-applications/daytrader8/README.md b/src/test/resources/test-applications/daytrader8/README.md new file mode 100644 index 00000000..595a96da --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/README.md @@ -0,0 +1,45 @@ +# Java EE8: DayTrader8 Sample + +This sample contains the DayTrader 8 benchmark, which is an application built around the paradigm of an online stock trading system. The application allows users to login, view their portfolio, lookup stock quotes, and buy or sell stock shares. With the aid of a Web-based load driver such as Apache JMeter, the real-world workload provided by DayTrader can be used to measure and compare the performance of Java Platform, Enterprise Edition (Java EE) application servers offered by a variety of vendors. In addition to the full workload, the application also contains a set of primitives used for functional and performance testing of various Java EE components and common design patterns. + +DayTrader is an end-to-end benchmark and performance sample application. It provides a real world Java EE workload. DayTrader's new design spans Java EE 8. + +This sample can be installed onto Liberty runtime versions 18.0.0.2 and later. A prebuilt derby database is provided in resources/data + + +To run this sample, first [download](https://github.com/OpenLiberty/sample.daytrader8/archive/master.zip) or clone this repo - to clone: +``` +git clone git@github.com:OpenLiberty/sample.daytrader8.git +``` + +From inside the sample.daytrader8 directory, build and start the application in Open Liberty with the following command: +``` +mvn clean package liberty:run +``` + +The server will listen on port 9080 by default. You can change the port (for example, to port 9081) by adding `mvn clean package liberty:run -DtestServerHttpPort=9081` to the end of the Maven command. + +Once the server is started, you should be able to access the application at: +http://localhost:9080/daytrader + + + +## Notice + +© Copyright IBM Corporation 2019. + +## License + +```text +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +```` diff --git a/src/test/resources/test-applications/daytrader8/README_LOAD_TEST.md b/src/test/resources/test-applications/daytrader8/README_LOAD_TEST.md new file mode 100644 index 00000000..23d468e1 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/README_LOAD_TEST.md @@ -0,0 +1,151 @@ +# Daytrader8: Load Testing +This readme explains how to setup DB2 and load test the Daytrader 8 application with Open Liberty. + +## Prerequisites + +1. Open Liberty Machine (Server with Open Liberty unzipped at , and a default profile created) +2. DB2 Machine (Server running DB2) +3. Driver Machine (Server running JMeter with jmeter files copied to /bin, and the WebSocket plugin copied to /lib/ext, see jmeter_files) + +## Setup Open Liberty + +Build Daytrader8; +[Download](https://github.com/OpenLiberty/sample.daytrader8/archive/master.zip) or clone this repo - to clone: +``` +git clone git@github.com:OpenLiberty/sample.daytrader8.git +``` + +From inside the sample.daytrader8 directory, build the application: +``` +mvn clean package +``` +* Copy target/io.openliberty.sample.daytrader8.war to /usr/servers/defaultServer/apps +* Copy src/main/liberty/config/server.xml_db2 to /usr/servers/defaultServer/server.xml (overwrite) +* Copy db2 jars from the DB2 Machine to /usr/shared/db2jars +``` +db2jcc4.jar +db2jcc_license_cu.jar +``` + +Create /usr/servers/defaultServer/jvm.options and add any JVM Arguments desired. +``` +-Xms1024m +-Xmx1024m +``` + +Set these environment variables. matching your environment (or hard code them in the server.xml): +``` +contextRoot=daytrader +dbUser +dbPass +tradeDbHost +tradeDbPort +tradeDbName +``` + +## Set up DB2 +Sign in to DB2 machine as db2 user and create tradedb database +``` +db2 create db tradedb +``` + +Note: When creating the database, DB2_APM_PERFORMANCE needs to be off, or you'll get: SQL1803N The requested operation cannot be executed in "No Package Lock" +``` +db2set DB2_APM_PERFORMANCE= +db2stop +db2start +``` + +## Load Database + +Start OpenLiberty: +``` +/bin/server start --clean +``` + +With a web browser go to http://openliberty-hostname:9080/daytrader/configure.html +``` +Click (Re)-create DayTrader Database Tables and Indexes +Click (Re)-populate DayTrader Database +``` + +Stop Liberty Server +``` +/bin/server stop +``` + +On the DB2 Server, Put the following into a script (backupTradeDB.sh) and run as the db2 user +``` +DB=tradedb +mkdir -p ~/backups/${DB} +db2 update dbm cfg using notifylevel 0 +db2 update dbm cfg using diaglevel 1 +db2 update dbm cfg using NUM_POOLAGENTS 500 automatic MAX_COORDAGENTS 500 automatic MAX_CONNECTIONS 500 automatic + +db2 -v update db cfg for ${DB} using MAXLOCKS 100 LOCKLIST 100000 + +db2 connect to ${DB} +db2 update db cfg for ${DB} using maxappls 500 automatic +db2 update db cfg for ${DB} using logfilsiz 8000 +db2 update db cfg for ${DB} using logprimary 32 +db2 update db cfg for ${DB} using dft_queryopt 0 + +db2 update db cfg for ${DB} using softmax 3000 +db2 update db cfg for ${DB} using chngpgs_thresh 99 + +db2 -v alter bufferpool IBMDEFAULTBP size -1 +db2 -v connect reset +db2 -v update db cfg for ${DB} using BUFFPAGE 262144 + +db2set DB2_APM_PERFORMANCE=ON +db2set DB2_KEEPTABLELOCK=CONNECTION +db2set DB2_USE_ALTERNATE_PAGE_CLEANING=ON +db2set DB2_MINIMIZE_LISTPREFETCH=YES +db2set DB2_LOGGER_NON_BUFFERED_IO=OFF + +db2 connect reset +db2 terminate + +db2stop force +db2start + +db2 connect to ${DB} +db2 reorgchk update statistics +db2 connect reset + +db2 terminate +db2 backup db tradedb to ~/backups/${DB} +``` + +Put the following into a script (restoreTradeDB.sh) to run before each server restart. (To make sure the database is in the same state every time) +``` +db2stop force +db2start +db2 restore db tradedb from ~/backups/tradedb replace existing +``` + +Note: If disk writing/reading becomes a bottleneck, you may need to create a ramdisk and restore the database to the ramdisk. + +## Apply Load +On the DB2 Server, restore the database (as db2 user) +``` +restoreTradeDB.sh +``` + +Start Liberty +``` +/bin/server start +``` + +On the JMETER Server, Start JMeter: +``` +cd /bin +./jmeter -n -t daytrader8.jmx -JHOST=openliberty-hostname -JDURATION=180 +``` + +Preferably, do three 180 second warm up runs and then three 180 second measurement runs with a 30 second break in between each. + +Also, a best practice is to reset the database between each run, which can be done on the configuration tab of the application. +``` +http://openliberty-hostname:9080/daytrader/config?action=resetTrade +``` diff --git a/src/test/resources/test-applications/daytrader8/jmeter_files/README.txt b/src/test/resources/test-applications/daytrader8/jmeter_files/README.txt new file mode 100644 index 00000000..50566ce0 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/jmeter_files/README.txt @@ -0,0 +1,54 @@ +# (C) Copyright IBM Corporation 2019, 2021. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + + +daytrader8.jmx is an Apache JMeter script that may be used for running the DayTrader8 benchmark. + +Jmeter version 3.3 or later is highly recommended. +To use the script, you will need to put the the WebSocket Sampler (and dependencies) from WebSocket Samplers by Peter Doornbosch into lib/ext. +Use the Jmeter plugin manager or download via https://bitbucket.org/pjtr/jmeter-websocket-samplers. + + +The script has the following options: + -JHOST The name of the machine running the DayTrader Application. The default is localhost. + -JPORT The HTTP port of the server running the DayTrader Application. The default is 9080. + -JPROTOCOL The transport either http or https + -JTHREADS The number of jmeter threads to start. The default is 50. + -JRAMP The ramp up time for starting the threads. Set this to the same value as -JTHREADS for a smoother startup. The default is 0. + -JDURATION The time (in seconds) to run jmeter. + -JMAXTHINKTIME The time in milliseconds to wait between each call. The default is 0 ms + -JSTOCKS The total amount of stocks/quotes in the database, minus one. The default is 9999, which assumes there are 10,000 stocks in the database. + -JBOTUID The lowest user id. The default is 0. + -JTOPUID The highest user id. The default is 14999, which assumes there are 15,000 users in the database. + +Example: ./jmeter -n -t daytrader8.jmx -JHOST=myserver -JPORT=9080 -JPROTOCOL=http -JMAXTHINKTIME=100 -JDURATION=300 + +To see output every five seconds from JMeter, edit the following section in /bin/jmeter.properties + +#--------------------------------------------------------------------------- +# Summariser - Generate Summary Results - configuration (mainly applies to non-GUI mode) +#--------------------------------------------------------------------------- +# +# Define the following property to automatically start a summariser with that name +# (applies to non-GUI mode only) +summariser.name=summary +# +# interval between summaries (in seconds) default 30 seconds +summariser.interval=5 +# +# Write messages to log file +summariser.log=true +# +# Write messages to System.out +summariser.out=true diff --git a/src/test/resources/test-applications/daytrader8/jmeter_files/daytrader8.jmx b/src/test/resources/test-applications/daytrader8/jmeter_files/daytrader8.jmx new file mode 100644 index 00000000..cfe98684 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/jmeter_files/daytrader8.jmx @@ -0,0 +1,2607 @@ + + + + + + false + false + + + + + + + + + false + -1 + + ${__P(THREADS,50)} + ${__P(RAMP,0)} + 1355173676000 + 1355173676000 + true + continue + ${__P(DURATION, 180)} + + true + + + + + false + false + rfc2109 + + + + + + User-Agent + Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; SV1; .NET CLR 1.1.4322) + + + Accept + image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, */* + + + Accept-Language + en-us + + + + + + + + minimumuid + ${__P(BOTUID,0)} + = + + + maximumuid + ${__P(TOPUID,14999)} + = + + + hostname + ${__P(HOST,localhost)} + = + + + port + ${__P(PORT,9080)} + = + + + maxthinkingtime + ${__P(MAXTHINKTIME,0)} + = + + + maximumsid + ${__P(STOCKS,9999)} + = + + + protocol + ${__P(PROTOCOL,http)} + = + http | https + + + + + + ${minimumuid} + ${maximumuid} + 1 + logincounter + + false + + + + 1 + + + + 1 + true + 50 + + ThroughputController.percentThroughput + 10.0 + 0.0 + + + + + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/welcome.faces + POST + false + true + true + false + + HttpClient4 + + + + + + + + + true + ${jsfViewState} + = + true + javax.faces.ViewState + + + false + xxx + = + true + login:password + + + false + Log in + = + true + login:submit + + + false + uid:${logincounter} + = + true + login:uid + + + false + 1 + = + true + login_SUBMIT + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/welcome.faces + POST + false + true + true + false + + HttpClient4 + + + + + + + loop + + + + true + + + true + + + + + Ready to Trade + + Assertion.response_data + false + 2 + + + + + ${maxthinkingtime} + + + + + ${loop} + + + + 1 + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 36.0 + 0.0 + + + + + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/quote.faces + GET + false + true + true + false + + HttpClient4 + + + + + + + + + true + ${jsfViewState} + = + true + javax.faces.ViewState + + + false + s:${__Random(0,${maximumsid},)} + = + true + quotes:symbols + + + false + quotes + = + true + quotes:submit2 + + + false + 1 + = + true + quotes_SUBMIT + + + false + 100 + = + true + quotes:quotes:0:quantity + + + false + 100 + = + true + quotes:quotes:1:quantity + + + false + 100 + = + true + quotes:quotes:2:quantity + + + false + 100 + = + true + quotes:quotes:3:quantity + + + false + 100 + = + true + quotes:quotes:4:quantity + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/quote.faces + POST + false + true + true + false + + HttpClient4 + + + + + + + DayTrader Quotes + + Assertion.response_data + false + 2 + + + + + ${maxthinkingtime} + + + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 16.0 + 0.0 + + + + + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/tradehome.faces + GET + false + true + true + false + + HttpClient4 + + + + + + ${maxthinkingtime} + + + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 15.0 + 0.0 + + + + + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/portfolio.faces + GET + false + true + true + false + + HttpClient4 + + + + + + ${maxthinkingtime} + + + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 10.0 + 0.0 + + + + + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/account.faces + GET + false + true + true + false + + HttpClient4 + + + + + + ${maxthinkingtime} + + + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 8.0 + 0.0 + + + + + ${__jexl3("${protocol}"== "http",)} + false + true + + + + true + false + ${hostname} + ${port} + /daytrader/marketsummary + false + {"action":"updateMarketSummary"} + 20000 + open and close + 20000 + false + + + + + ${maxthinkingtime} + + + + + + ${__jexl3("${protocol}"== "https",)} + false + true + + + + true + true + ${hostname} + ${port} + /daytrader/marketsummary + false + {"action":"updateMarketSummary"} + 20000 + open and close + 20000 + false + + + + + ${maxthinkingtime} + + + + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 4.0 + 0.0 + + + + + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/quote.faces + GET + false + true + true + false + + HttpClient4 + + + + + + ${maxthinkingtime} + + + + + + + + true + ${jsfViewState} + = + true + javax.faces.ViewState + + + false + s:${__Random(0,${maximumsid},)} + = + true + quotes:symbols + + + false + quotes + = + true + quotes:submit2 + + + false + 1 + = + true + quotes_SUBMIT + + + false + 100 + = + true + quotes:quotes:0:quantity + + + false + 100 + = + true + quotes:quotes:1:quantity + + + false + 100 + = + true + quotes:quotes:2:quantity + + + false + 100 + = + true + quotes:quotes:3:quantity + + + false + 100 + = + true + quotes:quotes:4:quantity + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/quote.faces + POST + false + true + true + false + + HttpClient4 + + + + + + + DayTrader Quotes + + Assertion.response_data + false + 2 + + + + + ${maxthinkingtime} + + + + false + tobuy + s:([0-9]+) + $1$ + 0 + 1 + all + + + + + + + + true + ${jsfViewState} + = + true + javax.faces.ViewState + + + false + s:${tobuy} + = + true + quotes:symbols + + + false + ${__Random(1,200)} + = + true + quotes:quotes:0:quantity + + + false + buy + = + true + quotes:quotes:0:buy + + + false + 1 + = + true + quotes_SUBMIT + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/quote.faces + POST + false + true + true + false + + HttpClient4 + + + + + + + been submitted + + Assertion.response_data + false + 2 + + + + + ${maxthinkingtime} + + + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 4.0 + 0.0 + + + + + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/portfolio.faces + GET + false + true + true + false + + HttpClient4 + + + + + + false + numHoldings + of Holdings: </b>([1-9][0-9]*)</td> + $1$ + 0 + 0 + all + + + + ${maxthinkingtime} + + + + + ${__jexl("${numHoldings}" != "0")} + false + true + + + + + + + true + ${jsfViewState} + = + true + javax.faces.ViewState + + + false + portfolio:holdings:0:sell + = + true + portfolio:_idcl + + + false + 1 + = + true + portfolio_SUBMIT + + + false + s:0,s:1,s:2,s:3,s:4 + = + true + portfolio:symbols + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/portfolio.faces + POST + false + true + true + false + + HttpClient4 + + + + + + + been submitted + + Assertion.response_data + false + 2 + + + + + ${maxthinkingtime} + + + + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 2.0 + 0.0 + + + + + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/account.faces + GET + false + true + true + false + + HttpClient4 + + + + + + ${maxthinkingtime} + + + + + + + + true + ${jsfViewState} + = + true + javax.faces.ViewState + + + false + uid:${logincounter} + = + true + updateProfile:uid + + + false + rnd${__threadNum}${logincounter} + = + true + updateProfile:fullname + + + false + xxx + = + true + updateProfile:password + + + false + rndAddress + = + true + updateProfile:address + + + false + xxx + = + true + updateProfile:cpassword + + + false + rndCC + = + true + updateProfile:ccn + + + false + rndEmail@email.com + = + true + updateProfile:email + + + false + 1 + = + true + updateProfile_SUBMIT + + + false + Update Profile + = + true + updateProfile:submit + + + false + s:0,s:1,s:2,s:3,s:4 + = + true + updateProfile:symbols + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/account.faces + POST + false + true + true + false + + HttpClient4 + + + + + + ${maxthinkingtime} + + + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 1.0 + 0.0 + + + + + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/tradehome.faces + GET + false + true + true + false + + HttpClient4 + + + + + + + + + true + ${jsfViewState} + = + true + javax.faces.ViewState + + + false + tradeHome:logoff + = + true + tradeHome:_idcl + + + false + s:0,s:1,s:2,s:3,s:4 + = + true + tradeHome:symbols + + + false + 1 + = + true + tradeHome_SUBMIT + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/tradehome.faces + POST + false + true + true + false + + HttpClient4 + + + + + + ${maxthinkingtime} + + + + + DayTrader Login + + Assertion.response_data + false + 2 + + + + + + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/register.faces + GET + false + true + true + false + + HttpClient4 + + + + + + + + + true + ${jsfViewState} + = + true + javax.faces.ViewState + + + false + first:${__Random(0,999,)} last:${__Random(0,4999,)} + = + true + register:fullname + + + false + first:${__Random(0,999,)} last:${__Random(0,4999,)} + = + true + register:address + + + false + uid${logincounter}@${__Random(0,100,)}.com + = + true + register:email + + + false + ru:${logincounter}${__threadNum}:${__time(HMS)}${__Random(0,999,)} + = + true + register:uid + + + false + yyy + = + true + register:password + + + false + yyy + = + true + register:cpassword + + + false + 1000000 + = + true + register:money + + + false + 123-fake-ccnum-456 + = + true + register:ccn + + + false + 1 + = + true + register_SUBMIT + + + false + Register + = + true + register:submit + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/register.faces + POST + false + true + true + false + + HttpClient4 + + + + + + ${maxthinkingtime} + + + + + Registration operation succeeded + + Assertion.response_data + false + 2 + + + + + + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/tradehome.faces + GET + false + true + true + false + + HttpClient4 + + + + + + + + + true + ${jsfViewState} + = + true + javax.faces.ViewState + + + false + tradeHome:logoff + = + true + tradeHome:_idcl + + + false + s:0,s:1,s:2,s:3,s:4 + = + true + tradeHome:symbols + + + false + 1 + = + true + tradeHome_SUBMIT + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/tradehome.faces + POST + false + true + true + false + + HttpClient4 + + + + + + ${maxthinkingtime} + + + + + DayTrader Login + + Assertion.response_data + false + 2 + + + + + + + loop + + + + false + + + false + + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 4.0 + 0.0 + + + + + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/tradehome.faces + GET + false + true + true + false + + HttpClient4 + + + + + + + + + true + ${jsfViewState} + = + true + javax.faces.ViewState + + + false + tradeHome:logoff + = + true + tradeHome:_idcl + + + false + s:0,s:1,s:2,s:3,s:4 + = + true + tradeHome:symbols + + + false + 1 + = + true + tradeHome_SUBMIT + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/tradehome.faces + POST + false + true + true + false + + HttpClient4 + + + + + + ${maxthinkingtime} + + + + + DayTrader Login + + Assertion.response_data + false + 2 + + + + + + + loop + + + + false + + + false + + + + + + + false + jsfViewState + <input type="hidden" name="javax\.faces\.ViewState" id="j_id__v_0:javax\.faces\.ViewState:1" value="([^"]+)".*/> + $1$ + + 0 + + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 70.0 + 0.0 + + + + + + + + true + uid:${logincounter} + = + true + uid + + + true + xxx + = + true + passwd + + + true + login + = + true + action + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/app + POST + false + true + true + false + + HttpClient4 + + + + + + + loop + + + + true + + + true + + + + + Welcome to DayTrader + + Assertion.response_data + false + 2 + + + + + ${maxthinkingtime} + + + + + ${__jexl3("${protocol}"== "http",)} + false + true + + + + false + ${hostname} + ${port} + /daytrader/marketsummary + 20000 + 20000 + + + + + ${__jexl3("${protocol}"== "https",)} + false + true + + + + true + ${hostname} + ${port} + /daytrader/marketsummary + 20000 + 20000 + + + + + ${loop} + + + + 1 + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 36.0 + 0.0 + + + + + + + + true + quotes + = + true + action + + + true + s:${__Random(0,${maximumsid},)} + = + true + symbols + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/app + GET + false + true + true + false + + HttpClient4 + + + + + + + DayTrader: Quotes and Trading + + Assertion.response_data + false + 2 + + + + + ${maxthinkingtime} + + + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 16.0 + 0.0 + + + + + + + + true + home + = + true + action + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/app + GET + false + true + true + false + + HttpClient4 + + + + + + ${maxthinkingtime} + + + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 15.0 + 0.0 + + + + + + + + true + portfolio + = + true + action + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/app + GET + false + true + true + false + + HttpClient4 + + + + + + ${maxthinkingtime} + + + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 10.0 + 0.0 + + + + + + + + true + account + = + true + action + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/app + GET + false + true + true + false + + HttpClient4 + + + + + + ${maxthinkingtime} + + + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 8.0 + 0.0 + + + + + false + false + ${hostname} + ${port} + /daytrader/marketsummary + false + {"action":"updateMarketSummary"} + 20000 + use existing open connection + 20000 + false + + + + + ${maxthinkingtime} + + + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 4.0 + 0.0 + + + + + + + + true + quotes + = + true + action + + + true + s:${__Random(0,${maximumsid},tobuy)} + = + true + symbols + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/app + GET + false + true + true + false + + HttpClient4 + + + + + + ${maxthinkingtime} + + + + + + + + true + buy + = + true + action + + + true + s:${tobuy} + = + true + symbol + + + true + ${__Random(1,200)} + = + true + quantity + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/app + GET + false + true + true + false + + HttpClient4 + + + + + + + has been submitted + + Assertion.response_data + false + 2 + + + + + ${maxthinkingtime} + + + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 4.0 + 0.0 + + + + + + + + true + portfolio + = + true + action + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/app + GET + false + true + true + false + + HttpClient4 + + + + + + false + firstHoldingID + holdingID=([0-9]+) + $1$ + NotFound + 0 + all + + + + false + firstHoldingIDBool + holdingID=([0-9]+) + true + false + 1 + all + + + + ${maxthinkingtime} + + + + + ${firstHoldingIDBool} + false + true + + + + + + + true + sell + = + true + action + + + true + ${firstHoldingID} + = + true + holdingID + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/app + GET + false + true + true + false + + HttpClient4 + + + + + + + has been submitted + + Assertion.response_data + false + 2 + + + + + ${maxthinkingtime} + + + + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 2.0 + 0.0 + + + + + + + + true + account + = + true + action + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/app + GET + false + true + true + false + + HttpClient4 + + + + + + ${maxthinkingtime} + + + + + + + + true + update_profile + = + true + action + + + true + uid:${logincounter} + = + true + userID + + + true + rnd${__threadNum}${logincounter} + = + true + fullname + + + true + xxx + = + true + password + + + true + rndAddress + = + true + address + + + true + xxx + = + true + cpassword + + + true + rndCC + = + true + creditcard + + + true + rndEmail@email.com + = + true + email + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/app + GET + false + true + true + false + + HttpClient4 + + + + + + ${maxthinkingtime} + + + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 1.0 + 0.0 + + + + + + + + true + logout + = + true + action + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/app + GET + false + true + true + false + + HttpClient4 + + + + + + ${maxthinkingtime} + + + + + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/register.jsp + GET + false + true + true + false + + HttpClient4 + + + + + + ${maxthinkingtime} + + + + + + + + true + register + = + true + action + + + true + first:${__Random(0,999,)} last:${__Random(0,4999,)} + = + true + Full Name + + + true + first:${__Random(0,999,)} last:${__Random(0,4999,)} + = + true + snail mail + + + true + uid${logincounter}@${__Random(0,100,)}.com + = + true + email + + + true + ru:${logincounter}${__threadNum}:${__time(HMS)}${__Random(0,999,)} + = + true + user id + + + true + yyy + = + true + passwd + + + true + yyy + = + true + confirm passwd + + + true + 1000000 + = + true + money + + + true + 123-fake-ccnum-456 + = + true + Credit Card Number + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/app + GET + false + true + true + false + + HttpClient4 + + + + + + ${maxthinkingtime} + + + + + + + + true + logout + = + true + action + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/app + GET + false + true + true + false + + HttpClient4 + + + + + + ${maxthinkingtime} + + + + + + loop + + + + false + + + false + + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 4.0 + 0.0 + + + + + + + + true + logout + = + true + action + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/app + GET + false + true + true + false + + HttpClient4 + + + + + + ${maxthinkingtime} + + + + + DayTrader Login + + Assertion.response_data + false + 2 + + + + + + + loop + + + + false + + + false + + + + + + + 4000 + 6000 + + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 20.0 + 0.0 + + + + + + + + true + s:${__Random(0,${maximumsid},)} + = + true + symbols + + + + ${hostname} + ${port} + ${protocol} + + daytrader/rest/quotes + POST + false + true + true + false + + + + + + + + 200 + + Assertion.response_code + false + 2 + + + + + ${maxthinkingtime} + + + + + + + + false + + saveConfig + + + true + true + true + + true + true + true + true + false + true + true + false + false + true + false + false + false + false + false + 0 + true + true + true + true + + + daytrader8.aggregateReport.csv + + + + true + + saveConfig + + + true + true + true + + true + true + true + true + false + true + true + false + false + false + false + false + false + false + false + 0 + true + true + true + true + + + daytrader8.resultsTree.csv + + + + false + + saveConfig + + + true + true + true + + true + true + true + true + false + true + true + false + false + true + false + false + false + false + false + 0 + true + true + true + true + + + daytrader8.resultsTable.csv + + + + + diff --git a/src/test/resources/test-applications/daytrader8/jmeter_files/daytrader8_mojarra.jmx b/src/test/resources/test-applications/daytrader8/jmeter_files/daytrader8_mojarra.jmx new file mode 100755 index 00000000..bcb3d4fa --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/jmeter_files/daytrader8_mojarra.jmx @@ -0,0 +1,2600 @@ + + + + + + false + false + + + + + + + + + false + -1 + + ${__P(THREADS,50)} + ${__P(RAMP,0)} + 1355173676000 + 1355173676000 + true + continue + ${__P(DURATION, 180)} + + true + + + + + false + false + rfc2109 + + + + + + User-Agent + Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; SV1; .NET CLR 1.1.4322) + + + Accept + image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, */* + + + Accept-Language + en-us + + + + + + + + minimumuid + ${__P(BOTUID,0)} + = + + + maximumuid + ${__P(TOPUID,14999)} + = + + + hostname + ${__P(HOST,localhost)} + = + + + port + ${__P(PORT,9080)} + = + + + maxthinkingtime + ${__P(MAXTHINKTIME,0)} + = + + + maximumsid + ${__P(STOCKS,9999)} + = + + + protocol + ${__P(PROTOCOL,http)} + = + http | https + + + + + + ${minimumuid} + ${maximumuid} + 1 + logincounter + + false + + + + 1 + + + + 1 + true + 50 + + ThroughputController.percentThroughput + 10.0 + 0.0 + + + + + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/welcome.faces + POST + false + true + true + false + + HttpClient4 + + + + + + + + + false + ${jsfViewState} + = + true + javax.faces.ViewState + + + false + xxx + = + true + login:password + + + false + Log in + = + true + login:submit + + + false + uid:${logincounter} + = + true + login:uid + + + false + login + = + true + login + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/welcome.faces + POST + false + true + true + false + + HttpClient4 + + + + + + + loop + + + + true + + + true + + + + + Ready to Trade + + Assertion.response_data + false + 2 + + + + + ${maxthinkingtime} + + + + + ${loop} + + + + 1 + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 36.0 + 0.0 + + + + + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/quote.faces + GET + false + true + true + false + + HttpClient4 + + + + + + + + + true + ${jsfViewState} + = + true + javax.faces.ViewState + + + false + s:${__Random(0,${maximumsid},)} + = + true + quotes:symbols + + + false + quotes + = + true + quotes:submit + + + false + quotes + = + true + quotes + + + false + 100 + = + true + quotes:quotes:0:quantity + + + false + 100 + = + true + quotes:quotes:1:quantity + + + false + 100 + = + true + quotes:quotes:2:quantity + + + false + 100 + = + true + quotes:quotes:3:quantity + + + false + 100 + = + true + quotes:quotes:4:quantity + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/quote.faces + POST + false + true + true + false + + HttpClient4 + + + + + + + DayTrader Quotes + + Assertion.response_data + false + 2 + + + + + ${maxthinkingtime} + + + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 16.0 + 0.0 + + + + + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/tradehome.faces + GET + false + true + true + false + + HttpClient4 + + + + + + ${maxthinkingtime} + + + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 15.0 + 0.0 + + + + + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/portfolio.faces + GET + false + true + true + false + + HttpClient4 + + + + + + ${maxthinkingtime} + + + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 10.0 + 0.0 + + + + + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/account.faces + GET + false + true + true + false + + HttpClient4 + + + + + + ${maxthinkingtime} + + + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 8.0 + 0.0 + + + + + ${__jexl3("${protocol}"== "http",)} + false + true + + + + true + false + ${hostname} + ${port} + /daytrader/marketsummary + false + {"action":"updateMarketSummary"} + 20000 + open and close + 20000 + false + + + + + ${maxthinkingtime} + + + + + + ${__jexl3("${protocol}"== "https",)} + false + true + + + + true + true + ${hostname} + ${port} + /daytrader/marketsummary + false + {"action":"updateMarketSummary"} + 20000 + open and close + 20000 + false + + + + + ${maxthinkingtime} + + + + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 4.0 + 0.0 + + + + + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/quote.faces + GET + false + true + true + false + + HttpClient4 + + + + + + ${maxthinkingtime} + + + + + + + + true + ${jsfViewState} + = + true + javax.faces.ViewState + + + false + s:${__Random(0,${maximumsid},)} + = + true + quotes:symbols + + + false + quotes + = + true + quotes:submit + + + false + quotes + = + true + quotes + + + false + 100 + = + true + quotes:quotes:0:quantity + + + false + 100 + = + true + quotes:quotes:1:quantity + + + false + 100 + = + true + quotes:quotes:2:quantity + + + false + 100 + = + true + quotes:quotes:3:quantity + + + false + 100 + = + true + quotes:quotes:4:quantity + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/quote.faces + POST + false + true + true + false + + HttpClient4 + + + + + + + DayTrader Quotes + + Assertion.response_data + false + 2 + + + + + ${maxthinkingtime} + + + + false + tobuy + s:([0-9]+) + $1$ + 0 + 1 + all + + + + + + + + true + ${jsfViewState} + = + true + javax.faces.ViewState + + + false + s:${tobuy} + = + true + quotes:symbols + + + false + ${__Random(1,200)} + = + true + quotes:quotes:0:quantity + + + false + buy + = + true + quotes:quotes:0:buy + + + false + quotes + = + true + quotes + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/quote.faces + POST + false + true + true + false + + HttpClient4 + + + + + + + been submitted + + Assertion.response_data + false + 2 + + + + + ${maxthinkingtime} + + + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 4.0 + 0.0 + + + + + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/portfolio.faces + GET + false + true + true + false + + HttpClient4 + + + + + + false + numHoldings + of Holdings: </b>([1-9][0-9]*)</td> + $1$ + 0 + 0 + all + + + + ${maxthinkingtime} + + + + + ${__jexl("${numHoldings}" != "0")} + false + true + + + + + + + true + ${jsfViewState} + = + true + javax.faces.ViewState + + + false + portfolio:holdings:0:sell + = + true + portfolio:holdings:0:sell + + + false + portfolio + = + true + portfolio + + + false + s:0,s:1,s:2,s:3,s:4 + = + true + portfolio:symbols + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/portfolio.faces + POST + false + true + true + false + + HttpClient4 + + + + + + + been submitted + + Assertion.response_data + false + 2 + + + + + ${maxthinkingtime} + + + + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 2.0 + 0.0 + + + + + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/account.faces + GET + false + true + true + false + + HttpClient4 + + + + + + ${maxthinkingtime} + + + + + + + + true + ${jsfViewState} + = + true + javax.faces.ViewState + + + false + uid:${logincounter} + = + true + updateProfile:uid + + + false + rnd${__threadNum}${logincounter} + = + true + updateProfile:fullname + + + false + xxx + = + true + updateProfile:password + + + false + rndAddress + = + true + updateProfile:address + + + false + xxx + = + true + updateProfile:cpassword + + + false + rndCC + = + true + updateProfile:ccn + + + false + rndEmail@email.com + = + true + updateProfile:email + + + false + updateProfile + = + true + updateProfile + + + false + Update Profile + = + true + updateProfile:submit + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/account.faces + POST + false + true + true + false + + HttpClient4 + + + + + + ${maxthinkingtime} + + + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 1.0 + 0.0 + + + + + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/tradehome.faces + GET + false + true + true + false + + HttpClient4 + + + + + + + + + true + ${jsfViewState} + = + true + javax.faces.ViewState + + + false + tradeHome:logoff + = + true + tradeHome:logoff + + + false + s:1,s:2,s:3,s:4 + = + true + tradeHome:symbols + + + false + tradeHome + = + true + tradeHome + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/tradehome.faces + POST + false + true + true + false + + HttpClient4 + + + + + + ${maxthinkingtime} + + + + + DayTrader Login + + Assertion.response_data + false + 2 + + + + + + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/register.faces + GET + false + true + true + false + + HttpClient4 + + + + + + + + + true + ${jsfViewState} + = + true + javax.faces.ViewState + + + false + first:${__Random(0,999,)} last:${__Random(0,4999,)} + = + true + register:fullname + + + false + first:${__Random(0,999,)} last:${__Random(0,4999,)} + = + true + register:address + + + false + uid${logincounter}@${__Random(0,100,)}.com + = + true + register:email + + + false + ru:${logincounter}${__threadNum}:${__time(HMS)}${__Random(0,999,)} + = + true + register:uid + + + false + yyy + = + true + register:password + + + false + yyy + = + true + register:cpassword + + + false + 1000000 + = + true + register:money + + + false + 123-fake-ccnum-456 + = + true + register:ccn + + + false + register + = + true + register + + + false + Register + = + true + register:submit + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/register.faces + POST + false + true + true + false + + HttpClient4 + + + + + + ${maxthinkingtime} + + + + + Registration operation succeeded + + Assertion.response_data + false + 2 + + + + + + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/tradehome.faces + GET + false + true + true + false + + HttpClient4 + + + + + + + + + true + ${jsfViewState} + = + true + javax.faces.ViewState + + + false + tradeHome:logoff + = + true + tradeHome:logoff + + + false + s:1,s:2,s:3,s:4 + = + true + tradeHome:symbols + + + false + tradeHome + = + true + tradeHome + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/tradehome.faces + POST + false + true + true + false + + HttpClient4 + + + + + + ${maxthinkingtime} + + + + + DayTrader Login + + Assertion.response_data + false + 2 + + + + + + + loop + + + + false + + + false + + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 4.0 + 0.0 + + + + + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/tradehome.faces + GET + false + true + true + false + + HttpClient4 + + + + + + + + + true + ${jsfViewState} + = + true + javax.faces.ViewState + + + false + tradeHome:logoff + = + true + tradeHome:logoff + + + false + s:0,s:1,s:2,s:3,s:4 + = + true + tradeHome:symbols + + + false + tradeHome + = + true + tradeHome + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/tradehome.faces + POST + false + true + true + false + + HttpClient4 + + + + + + ${maxthinkingtime} + + + + + DayTrader Login + + Assertion.response_data + false + 2 + + + + + + + loop + + + + false + + + false + + + + + + + false + jsfViewState + <input type="hidden" name="javax\.faces\.ViewState" .* value="([^"]+)".*/> + $1$ + + 0 + + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 70.0 + 0.0 + + + + + + + + true + uid:${logincounter} + = + true + uid + + + true + xxx + = + true + passwd + + + true + login + = + true + action + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/app + POST + false + true + true + false + + HttpClient4 + + + + + + + loop + + + + true + + + true + + + + + Welcome to DayTrader + + Assertion.response_data + false + 2 + + + + + ${maxthinkingtime} + + + + + ${__jexl3("${protocol}"== "http",)} + false + true + + + + false + ${hostname} + ${port} + /daytrader/marketsummary + 20000 + 20000 + + + + + ${__jexl3("${protocol}"== "https",)} + false + true + + + + true + ${hostname} + ${port} + /daytrader/marketsummary + 20000 + 20000 + + + + + ${loop} + + + + 1 + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 36.0 + 0.0 + + + + + + + + true + quotes + = + true + action + + + true + s:${__Random(0,${maximumsid},)} + = + true + symbols + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/app + GET + false + true + true + false + + HttpClient4 + + + + + + + DayTrader: Quotes and Trading + + Assertion.response_data + false + 2 + + + + + ${maxthinkingtime} + + + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 16.0 + 0.0 + + + + + + + + true + home + = + true + action + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/app + GET + false + true + true + false + + HttpClient4 + + + + + + ${maxthinkingtime} + + + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 15.0 + 0.0 + + + + + + + + true + portfolio + = + true + action + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/app + GET + false + true + true + false + + HttpClient4 + + + + + + ${maxthinkingtime} + + + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 10.0 + 0.0 + + + + + + + + true + account + = + true + action + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/app + GET + false + true + true + false + + HttpClient4 + + + + + + ${maxthinkingtime} + + + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 8.0 + 0.0 + + + + + false + false + ${hostname} + ${port} + /daytrader/marketsummary + false + {"action":"updateMarketSummary"} + 20000 + use existing open connection + 20000 + false + + + + + ${maxthinkingtime} + + + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 4.0 + 0.0 + + + + + + + + true + quotes + = + true + action + + + true + s:${__Random(0,${maximumsid},tobuy)} + = + true + symbols + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/app + GET + false + true + true + false + + HttpClient4 + + + + + + ${maxthinkingtime} + + + + + + + + true + buy + = + true + action + + + true + s:${tobuy} + = + true + symbol + + + true + ${__Random(1,200)} + = + true + quantity + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/app + GET + false + true + true + false + + HttpClient4 + + + + + + + has been submitted + + Assertion.response_data + false + 2 + + + + + ${maxthinkingtime} + + + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 4.0 + 0.0 + + + + + + + + true + portfolio + = + true + action + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/app + GET + false + true + true + false + + HttpClient4 + + + + + + false + firstHoldingID + holdingID=([0-9]+) + $1$ + NotFound + 0 + all + + + + false + firstHoldingIDBool + holdingID=([0-9]+) + true + false + 1 + all + + + + ${maxthinkingtime} + + + + + ${firstHoldingIDBool} + false + true + + + + + + + true + sell + = + true + action + + + true + ${firstHoldingID} + = + true + holdingID + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/app + GET + false + true + true + false + + HttpClient4 + + + + + + + has been submitted + + Assertion.response_data + false + 2 + + + + + ${maxthinkingtime} + + + + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 2.0 + 0.0 + + + + + + + + true + account + = + true + action + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/app + GET + false + true + true + false + + HttpClient4 + + + + + + ${maxthinkingtime} + + + + + + + + true + update_profile + = + true + action + + + true + uid:${logincounter} + = + true + userID + + + true + rnd${__threadNum}${logincounter} + = + true + fullname + + + true + xxx + = + true + password + + + true + rndAddress + = + true + address + + + true + xxx + = + true + cpassword + + + true + rndCC + = + true + creditcard + + + true + rndEmail@email.com + = + true + email + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/app + GET + false + true + true + false + + HttpClient4 + + + + + + ${maxthinkingtime} + + + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 1.0 + 0.0 + + + + + + + + true + logout + = + true + action + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/app + GET + false + true + true + false + + HttpClient4 + + + + + + ${maxthinkingtime} + + + + + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/register.jsp + GET + false + true + true + false + + HttpClient4 + + + + + + ${maxthinkingtime} + + + + + + + + true + register + = + true + action + + + true + first:${__Random(0,999,)} last:${__Random(0,4999,)} + = + true + Full Name + + + true + first:${__Random(0,999,)} last:${__Random(0,4999,)} + = + true + snail mail + + + true + uid${logincounter}@${__Random(0,100,)}.com + = + true + email + + + true + ru:${logincounter}${__threadNum}:${__time(HMS)}${__Random(0,999,)} + = + true + user id + + + true + yyy + = + true + passwd + + + true + yyy + = + true + confirm passwd + + + true + 1000000 + = + true + money + + + true + 123-fake-ccnum-456 + = + true + Credit Card Number + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/app + GET + false + true + true + false + + HttpClient4 + + + + + + ${maxthinkingtime} + + + + + + + + true + logout + = + true + action + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/app + GET + false + true + true + false + + HttpClient4 + + + + + + ${maxthinkingtime} + + + + + + loop + + + + false + + + false + + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 4.0 + 0.0 + + + + + + + + true + logout + = + true + action + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/app + GET + false + true + true + false + + HttpClient4 + + + + + + ${maxthinkingtime} + + + + + DayTrader Login + + Assertion.response_data + false + 2 + + + + + + + loop + + + + false + + + false + + + + + + + 4000 + 6000 + + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 20.0 + 0.0 + + + + + + + + true + s:${__Random(0,${maximumsid},)} + = + true + symbols + + + + ${hostname} + ${port} + ${protocol} + + daytrader/rest/quotes + POST + false + true + true + false + + + + + + + + 200 + + Assertion.response_code + false + 2 + + + + + ${maxthinkingtime} + + + + + + + + false + + saveConfig + + + true + true + true + + true + true + true + true + false + true + true + false + false + true + false + false + false + false + false + 0 + true + true + true + true + + + daytrader8.aggregateReport.csv + + + + true + + saveConfig + + + true + true + true + + true + true + true + true + false + true + true + false + false + false + false + false + false + false + false + 0 + true + true + true + true + + + daytrader8.resultsTree.csv + + + + false + + saveConfig + + + true + true + true + + true + true + true + true + false + true + true + false + false + true + false + false + false + false + false + 0 + true + true + true + true + + + daytrader8.resultsTable.csv + + + + + diff --git a/src/test/resources/test-applications/daytrader8/jmeter_files/daytrader8_mojarra_no_ws.jmx b/src/test/resources/test-applications/daytrader8/jmeter_files/daytrader8_mojarra_no_ws.jmx new file mode 100644 index 00000000..d294427d --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/jmeter_files/daytrader8_mojarra_no_ws.jmx @@ -0,0 +1,2600 @@ + + + + + + false + false + + + + + + + + + false + -1 + + ${__P(THREADS,50)} + ${__P(RAMP,0)} + 1355173676000 + 1355173676000 + true + continue + ${__P(DURATION, 180)} + + true + + + + + false + false + rfc2109 + + + + + + User-Agent + Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; SV1; .NET CLR 1.1.4322) + + + Accept + image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, */* + + + Accept-Language + en-us + + + + + + + + minimumuid + ${__P(BOTUID,0)} + = + + + maximumuid + ${__P(TOPUID,14999)} + = + + + hostname + ${__P(HOST,localhost)} + = + + + port + ${__P(PORT,9080)} + = + + + maxthinkingtime + ${__P(MAXTHINKTIME,0)} + = + + + maximumsid + ${__P(STOCKS,9999)} + = + + + protocol + ${__P(PROTOCOL,http)} + = + http | https + + + + + + ${minimumuid} + ${maximumuid} + 1 + logincounter + + false + + + + 1 + + + + 1 + true + 50 + + ThroughputController.percentThroughput + 10.0 + 0.0 + + + + + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/welcome.faces + POST + false + true + true + false + + HttpClient4 + + + + + + + + + false + ${jsfViewState} + = + true + javax.faces.ViewState + + + false + xxx + = + true + login:password + + + false + Log in + = + true + login:submit + + + false + uid:${logincounter} + = + true + login:uid + + + false + login + = + true + login + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/welcome.faces + POST + false + true + true + false + + HttpClient4 + + + + + + + loop + + + + true + + + true + + + + + Ready to Trade + + Assertion.response_data + false + 2 + + + + + ${maxthinkingtime} + + + + + ${loop} + + + + 1 + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 36.0 + 0.0 + + + + + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/quote.faces + GET + false + true + true + false + + HttpClient4 + + + + + + + + + true + ${jsfViewState} + = + true + javax.faces.ViewState + + + false + s:${__Random(0,${maximumsid},)} + = + true + quotes:symbols + + + false + quotes + = + true + quotes:submit + + + false + quotes + = + true + quotes + + + false + 100 + = + true + quotes:quotes:0:quantity + + + false + 100 + = + true + quotes:quotes:1:quantity + + + false + 100 + = + true + quotes:quotes:2:quantity + + + false + 100 + = + true + quotes:quotes:3:quantity + + + false + 100 + = + true + quotes:quotes:4:quantity + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/quote.faces + POST + false + true + true + false + + HttpClient4 + + + + + + + DayTrader Quotes + + Assertion.response_data + false + 2 + + + + + ${maxthinkingtime} + + + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 16.0 + 0.0 + + + + + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/tradehome.faces + GET + false + true + true + false + + HttpClient4 + + + + + + ${maxthinkingtime} + + + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 15.0 + 0.0 + + + + + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/portfolio.faces + GET + false + true + true + false + + HttpClient4 + + + + + + ${maxthinkingtime} + + + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 10.0 + 0.0 + + + + + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/account.faces + GET + false + true + true + false + + HttpClient4 + + + + + + ${maxthinkingtime} + + + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 8.0 + 0.0 + + + + + ${__jexl3("${protocol}"== "http",)} + false + true + + + + true + false + ${hostname} + ${port} + /daytrader/marketsummary + false + {"action":"updateMarketSummary"} + 20000 + open and close + 20000 + false + + + + + ${maxthinkingtime} + + + + + + ${__jexl3("${protocol}"== "https",)} + false + true + + + + true + true + ${hostname} + ${port} + /daytrader/marketsummary + false + {"action":"updateMarketSummary"} + 20000 + open and close + 20000 + false + + + + + ${maxthinkingtime} + + + + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 4.0 + 0.0 + + + + + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/quote.faces + GET + false + true + true + false + + HttpClient4 + + + + + + ${maxthinkingtime} + + + + + + + + true + ${jsfViewState} + = + true + javax.faces.ViewState + + + false + s:${__Random(0,${maximumsid},)} + = + true + quotes:symbols + + + false + quotes + = + true + quotes:submit + + + false + quotes + = + true + quotes + + + false + 100 + = + true + quotes:quotes:0:quantity + + + false + 100 + = + true + quotes:quotes:1:quantity + + + false + 100 + = + true + quotes:quotes:2:quantity + + + false + 100 + = + true + quotes:quotes:3:quantity + + + false + 100 + = + true + quotes:quotes:4:quantity + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/quote.faces + POST + false + true + true + false + + HttpClient4 + + + + + + + DayTrader Quotes + + Assertion.response_data + false + 2 + + + + + ${maxthinkingtime} + + + + false + tobuy + s:([0-9]+) + $1$ + 0 + 1 + all + + + + + + + + true + ${jsfViewState} + = + true + javax.faces.ViewState + + + false + s:${tobuy} + = + true + quotes:symbols + + + false + ${__Random(1,200)} + = + true + quotes:quotes:0:quantity + + + false + buy + = + true + quotes:quotes:0:buy + + + false + quotes + = + true + quotes + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/quote.faces + POST + false + true + true + false + + HttpClient4 + + + + + + + been submitted + + Assertion.response_data + false + 2 + + + + + ${maxthinkingtime} + + + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 4.0 + 0.0 + + + + + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/portfolio.faces + GET + false + true + true + false + + HttpClient4 + + + + + + false + numHoldings + of Holdings: </b>([1-9][0-9]*)</td> + $1$ + 0 + 0 + all + + + + ${maxthinkingtime} + + + + + ${__jexl("${numHoldings}" != "0")} + false + true + + + + + + + true + ${jsfViewState} + = + true + javax.faces.ViewState + + + false + portfolio:holdings:0:sell + = + true + portfolio:holdings:0:sell + + + false + portfolio + = + true + portfolio + + + false + s:0,s:1,s:2,s:3,s:4 + = + true + portfolio:symbols + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/portfolio.faces + POST + false + true + true + false + + HttpClient4 + + + + + + + been submitted + + Assertion.response_data + false + 2 + + + + + ${maxthinkingtime} + + + + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 2.0 + 0.0 + + + + + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/account.faces + GET + false + true + true + false + + HttpClient4 + + + + + + ${maxthinkingtime} + + + + + + + + true + ${jsfViewState} + = + true + javax.faces.ViewState + + + false + uid:${logincounter} + = + true + updateProfile:uid + + + false + rnd${__threadNum}${logincounter} + = + true + updateProfile:fullname + + + false + xxx + = + true + updateProfile:password + + + false + rndAddress + = + true + updateProfile:address + + + false + xxx + = + true + updateProfile:cpassword + + + false + rndCC + = + true + updateProfile:ccn + + + false + rndEmail@email.com + = + true + updateProfile:email + + + false + updateProfile + = + true + updateProfile + + + false + Update Profile + = + true + updateProfile:submit + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/account.faces + POST + false + true + true + false + + HttpClient4 + + + + + + ${maxthinkingtime} + + + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 1.0 + 0.0 + + + + + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/tradehome.faces + GET + false + true + true + false + + HttpClient4 + + + + + + + + + true + ${jsfViewState} + = + true + javax.faces.ViewState + + + false + tradeHome:logoff + = + true + tradeHome:logoff + + + false + s:1,s:2,s:3,s:4 + = + true + tradeHome:symbols + + + false + tradeHome + = + true + tradeHome + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/tradehome.faces + POST + false + true + true + false + + HttpClient4 + + + + + + ${maxthinkingtime} + + + + + DayTrader Login + + Assertion.response_data + false + 2 + + + + + + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/register.faces + GET + false + true + true + false + + HttpClient4 + + + + + + + + + true + ${jsfViewState} + = + true + javax.faces.ViewState + + + false + first:${__Random(0,999,)} last:${__Random(0,4999,)} + = + true + register:fullname + + + false + first:${__Random(0,999,)} last:${__Random(0,4999,)} + = + true + register:address + + + false + uid${logincounter}@${__Random(0,100,)}.com + = + true + register:email + + + false + ru:${logincounter}${__threadNum}:${__time(HMS)}${__Random(0,999,)} + = + true + register:uid + + + false + yyy + = + true + register:password + + + false + yyy + = + true + register:cpassword + + + false + 1000000 + = + true + register:money + + + false + 123-fake-ccnum-456 + = + true + register:ccn + + + false + register + = + true + register + + + false + Register + = + true + register:submit + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/register.faces + POST + false + true + true + false + + HttpClient4 + + + + + + ${maxthinkingtime} + + + + + Registration operation succeeded + + Assertion.response_data + false + 2 + + + + + + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/tradehome.faces + GET + false + true + true + false + + HttpClient4 + + + + + + + + + true + ${jsfViewState} + = + true + javax.faces.ViewState + + + false + tradeHome:logoff + = + true + tradeHome:logoff + + + false + s:1,s:2,s:3,s:4 + = + true + tradeHome:symbols + + + false + tradeHome + = + true + tradeHome + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/tradehome.faces + POST + false + true + true + false + + HttpClient4 + + + + + + ${maxthinkingtime} + + + + + DayTrader Login + + Assertion.response_data + false + 2 + + + + + + + loop + + + + false + + + false + + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 4.0 + 0.0 + + + + + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/tradehome.faces + GET + false + true + true + false + + HttpClient4 + + + + + + + + + true + ${jsfViewState} + = + true + javax.faces.ViewState + + + false + tradeHome:logoff + = + true + tradeHome:logoff + + + false + s:0,s:1,s:2,s:3,s:4 + = + true + tradeHome:symbols + + + false + tradeHome + = + true + tradeHome + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/tradehome.faces + POST + false + true + true + false + + HttpClient4 + + + + + + ${maxthinkingtime} + + + + + DayTrader Login + + Assertion.response_data + false + 2 + + + + + + + loop + + + + false + + + false + + + + + + + false + jsfViewState + <input type="hidden" name="javax\.faces\.ViewState" .* value="([^"]+)".*/> + $1$ + + 0 + + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 70.0 + 0.0 + + + + + + + + true + uid:${logincounter} + = + true + uid + + + true + xxx + = + true + passwd + + + true + login + = + true + action + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/app + POST + false + true + true + false + + HttpClient4 + + + + + + + loop + + + + true + + + true + + + + + Welcome to DayTrader + + Assertion.response_data + false + 2 + + + + + ${maxthinkingtime} + + + + + ${__jexl3("${protocol}"== "http",)} + false + true + + + + false + ${hostname} + ${port} + /daytrader/marketsummary + 20000 + 20000 + + + + + ${__jexl3("${protocol}"== "https",)} + false + true + + + + true + ${hostname} + ${port} + /daytrader/marketsummary + 20000 + 20000 + + + + + ${loop} + + + + 1 + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 36.0 + 0.0 + + + + + + + + true + quotes + = + true + action + + + true + s:${__Random(0,${maximumsid},)} + = + true + symbols + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/app + GET + false + true + true + false + + HttpClient4 + + + + + + + DayTrader: Quotes and Trading + + Assertion.response_data + false + 2 + + + + + ${maxthinkingtime} + + + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 16.0 + 0.0 + + + + + + + + true + home + = + true + action + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/app + GET + false + true + true + false + + HttpClient4 + + + + + + ${maxthinkingtime} + + + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 15.0 + 0.0 + + + + + + + + true + portfolio + = + true + action + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/app + GET + false + true + true + false + + HttpClient4 + + + + + + ${maxthinkingtime} + + + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 10.0 + 0.0 + + + + + + + + true + account + = + true + action + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/app + GET + false + true + true + false + + HttpClient4 + + + + + + ${maxthinkingtime} + + + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 8.0 + 0.0 + + + + + false + false + ${hostname} + ${port} + /daytrader/marketsummary + false + {"action":"updateMarketSummary"} + 20000 + use existing open connection + 20000 + false + + + + + ${maxthinkingtime} + + + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 4.0 + 0.0 + + + + + + + + true + quotes + = + true + action + + + true + s:${__Random(0,${maximumsid},tobuy)} + = + true + symbols + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/app + GET + false + true + true + false + + HttpClient4 + + + + + + ${maxthinkingtime} + + + + + + + + true + buy + = + true + action + + + true + s:${tobuy} + = + true + symbol + + + true + ${__Random(1,200)} + = + true + quantity + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/app + GET + false + true + true + false + + HttpClient4 + + + + + + + has been submitted + + Assertion.response_data + false + 2 + + + + + ${maxthinkingtime} + + + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 4.0 + 0.0 + + + + + + + + true + portfolio + = + true + action + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/app + GET + false + true + true + false + + HttpClient4 + + + + + + false + firstHoldingID + holdingID=([0-9]+) + $1$ + NotFound + 0 + all + + + + false + firstHoldingIDBool + holdingID=([0-9]+) + true + false + 1 + all + + + + ${maxthinkingtime} + + + + + ${firstHoldingIDBool} + false + true + + + + + + + true + sell + = + true + action + + + true + ${firstHoldingID} + = + true + holdingID + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/app + GET + false + true + true + false + + HttpClient4 + + + + + + + has been submitted + + Assertion.response_data + false + 2 + + + + + ${maxthinkingtime} + + + + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 2.0 + 0.0 + + + + + + + + true + account + = + true + action + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/app + GET + false + true + true + false + + HttpClient4 + + + + + + ${maxthinkingtime} + + + + + + + + true + update_profile + = + true + action + + + true + uid:${logincounter} + = + true + userID + + + true + rnd${__threadNum}${logincounter} + = + true + fullname + + + true + xxx + = + true + password + + + true + rndAddress + = + true + address + + + true + xxx + = + true + cpassword + + + true + rndCC + = + true + creditcard + + + true + rndEmail@email.com + = + true + email + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/app + GET + false + true + true + false + + HttpClient4 + + + + + + ${maxthinkingtime} + + + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 1.0 + 0.0 + + + + + + + + true + logout + = + true + action + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/app + GET + false + true + true + false + + HttpClient4 + + + + + + ${maxthinkingtime} + + + + + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/register.jsp + GET + false + true + true + false + + HttpClient4 + + + + + + ${maxthinkingtime} + + + + + + + + true + register + = + true + action + + + true + first:${__Random(0,999,)} last:${__Random(0,4999,)} + = + true + Full Name + + + true + first:${__Random(0,999,)} last:${__Random(0,4999,)} + = + true + snail mail + + + true + uid${logincounter}@${__Random(0,100,)}.com + = + true + email + + + true + ru:${logincounter}${__threadNum}:${__time(HMS)}${__Random(0,999,)} + = + true + user id + + + true + yyy + = + true + passwd + + + true + yyy + = + true + confirm passwd + + + true + 1000000 + = + true + money + + + true + 123-fake-ccnum-456 + = + true + Credit Card Number + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/app + GET + false + true + true + false + + HttpClient4 + + + + + + ${maxthinkingtime} + + + + + + + + true + logout + = + true + action + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/app + GET + false + true + true + false + + HttpClient4 + + + + + + ${maxthinkingtime} + + + + + + loop + + + + false + + + false + + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 4.0 + 0.0 + + + + + + + + true + logout + = + true + action + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/app + GET + false + true + true + false + + HttpClient4 + + + + + + ${maxthinkingtime} + + + + + DayTrader Login + + Assertion.response_data + false + 2 + + + + + + + loop + + + + false + + + false + + + + + + + 4000 + 6000 + + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 20.0 + 0.0 + + + + + + + + true + s:${__Random(0,${maximumsid},)} + = + true + symbols + + + + ${hostname} + ${port} + ${protocol} + + daytrader/rest/quotes + POST + false + true + true + false + + + + + + + + 200 + + Assertion.response_code + false + 2 + + + + + ${maxthinkingtime} + + + + + + + + false + + saveConfig + + + true + true + true + + true + true + true + true + false + true + true + false + false + true + false + false + false + false + false + 0 + true + true + true + true + + + daytrader8.aggregateReport.csv + + + + true + + saveConfig + + + true + true + true + + true + true + true + true + false + true + true + false + false + false + false + false + false + false + false + 0 + true + true + true + true + + + daytrader8.resultsTree.csv + + + + false + + saveConfig + + + true + true + true + + true + true + true + true + false + true + true + false + false + true + false + false + false + false + false + 0 + true + true + true + true + + + daytrader8.resultsTable.csv + + + + + diff --git a/src/test/resources/test-applications/daytrader8/jmeter_files/daytrader8_no_ws.jmx b/src/test/resources/test-applications/daytrader8/jmeter_files/daytrader8_no_ws.jmx new file mode 100644 index 00000000..026ca71e --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/jmeter_files/daytrader8_no_ws.jmx @@ -0,0 +1,2607 @@ + + + + + + false + false + + + + + + + + + false + -1 + + ${__P(THREADS,50)} + ${__P(RAMP,0)} + 1355173676000 + 1355173676000 + true + continue + ${__P(DURATION, 180)} + + true + + + + + false + false + rfc2109 + + + + + + User-Agent + Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; SV1; .NET CLR 1.1.4322) + + + Accept + image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, */* + + + Accept-Language + en-us + + + + + + + + minimumuid + ${__P(BOTUID,0)} + = + + + maximumuid + ${__P(TOPUID,14999)} + = + + + hostname + ${__P(HOST,localhost)} + = + + + port + ${__P(PORT,9080)} + = + + + maxthinkingtime + ${__P(MAXTHINKTIME,0)} + = + + + maximumsid + ${__P(STOCKS,9999)} + = + + + protocol + ${__P(PROTOCOL,http)} + = + http | https + + + + + + ${minimumuid} + ${maximumuid} + 1 + logincounter + + false + + + + 1 + + + + 1 + true + 50 + + ThroughputController.percentThroughput + 10.0 + 0.0 + + + + + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/welcome.faces + POST + false + true + true + false + + HttpClient4 + + + + + + + + + true + ${jsfViewState} + = + true + javax.faces.ViewState + + + false + xxx + = + true + login:password + + + false + Log in + = + true + login:submit + + + false + uid:${logincounter} + = + true + login:uid + + + false + 1 + = + true + login_SUBMIT + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/welcome.faces + POST + false + true + true + false + + HttpClient4 + + + + + + + loop + + + + true + + + true + + + + + Ready to Trade + + Assertion.response_data + false + 2 + + + + + ${maxthinkingtime} + + + + + ${loop} + + + + 1 + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 36.0 + 0.0 + + + + + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/quote.faces + GET + false + true + true + false + + HttpClient4 + + + + + + + + + true + ${jsfViewState} + = + true + javax.faces.ViewState + + + false + s:${__Random(0,${maximumsid},)} + = + true + quotes:symbols + + + false + quotes + = + true + quotes:submit2 + + + false + 1 + = + true + quotes_SUBMIT + + + false + 100 + = + true + quotes:quotes:0:quantity + + + false + 100 + = + true + quotes:quotes:1:quantity + + + false + 100 + = + true + quotes:quotes:2:quantity + + + false + 100 + = + true + quotes:quotes:3:quantity + + + false + 100 + = + true + quotes:quotes:4:quantity + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/quote.faces + POST + false + true + true + false + + HttpClient4 + + + + + + + DayTrader Quotes + + Assertion.response_data + false + 2 + + + + + ${maxthinkingtime} + + + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 16.0 + 0.0 + + + + + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/tradehome.faces + GET + false + true + true + false + + HttpClient4 + + + + + + ${maxthinkingtime} + + + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 15.0 + 0.0 + + + + + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/portfolio.faces + GET + false + true + true + false + + HttpClient4 + + + + + + ${maxthinkingtime} + + + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 10.0 + 0.0 + + + + + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/account.faces + GET + false + true + true + false + + HttpClient4 + + + + + + ${maxthinkingtime} + + + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 8.0 + 0.0 + + + + + ${__jexl3("${protocol}"== "http",)} + false + true + + + + true + false + ${hostname} + ${port} + /daytrader/marketsummary + false + {"action":"updateMarketSummary"} + 20000 + open and close + 20000 + false + + + + + ${maxthinkingtime} + + + + + + ${__jexl3("${protocol}"== "https",)} + false + true + + + + true + true + ${hostname} + ${port} + /daytrader/marketsummary + false + {"action":"updateMarketSummary"} + 20000 + open and close + 20000 + false + + + + + ${maxthinkingtime} + + + + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 4.0 + 0.0 + + + + + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/quote.faces + GET + false + true + true + false + + HttpClient4 + + + + + + ${maxthinkingtime} + + + + + + + + true + ${jsfViewState} + = + true + javax.faces.ViewState + + + false + s:${__Random(0,${maximumsid},)} + = + true + quotes:symbols + + + false + quotes + = + true + quotes:submit2 + + + false + 1 + = + true + quotes_SUBMIT + + + false + 100 + = + true + quotes:quotes:0:quantity + + + false + 100 + = + true + quotes:quotes:1:quantity + + + false + 100 + = + true + quotes:quotes:2:quantity + + + false + 100 + = + true + quotes:quotes:3:quantity + + + false + 100 + = + true + quotes:quotes:4:quantity + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/quote.faces + POST + false + true + true + false + + HttpClient4 + + + + + + + DayTrader Quotes + + Assertion.response_data + false + 2 + + + + + ${maxthinkingtime} + + + + false + tobuy + s:([0-9]+) + $1$ + 0 + 1 + all + + + + + + + + true + ${jsfViewState} + = + true + javax.faces.ViewState + + + false + s:${tobuy} + = + true + quotes:symbols + + + false + ${__Random(1,200)} + = + true + quotes:quotes:0:quantity + + + false + buy + = + true + quotes:quotes:0:buy + + + false + 1 + = + true + quotes_SUBMIT + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/quote.faces + POST + false + true + true + false + + HttpClient4 + + + + + + + been submitted + + Assertion.response_data + false + 2 + + + + + ${maxthinkingtime} + + + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 4.0 + 0.0 + + + + + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/portfolio.faces + GET + false + true + true + false + + HttpClient4 + + + + + + false + numHoldings + of Holdings: </b>([1-9][0-9]*)</td> + $1$ + 0 + 0 + all + + + + ${maxthinkingtime} + + + + + ${__jexl("${numHoldings}" != "0")} + false + true + + + + + + + true + ${jsfViewState} + = + true + javax.faces.ViewState + + + false + portfolio:holdings:0:sell + = + true + portfolio:_idcl + + + false + 1 + = + true + portfolio_SUBMIT + + + false + s:0,s:1,s:2,s:3,s:4 + = + true + portfolio:symbols + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/portfolio.faces + POST + false + true + true + false + + HttpClient4 + + + + + + + been submitted + + Assertion.response_data + false + 2 + + + + + ${maxthinkingtime} + + + + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 2.0 + 0.0 + + + + + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/account.faces + GET + false + true + true + false + + HttpClient4 + + + + + + ${maxthinkingtime} + + + + + + + + true + ${jsfViewState} + = + true + javax.faces.ViewState + + + false + uid:${logincounter} + = + true + updateProfile:uid + + + false + rnd${__threadNum}${logincounter} + = + true + updateProfile:fullname + + + false + xxx + = + true + updateProfile:password + + + false + rndAddress + = + true + updateProfile:address + + + false + xxx + = + true + updateProfile:cpassword + + + false + rndCC + = + true + updateProfile:ccn + + + false + rndEmail@email.com + = + true + updateProfile:email + + + false + 1 + = + true + updateProfile_SUBMIT + + + false + Update Profile + = + true + updateProfile:submit + + + false + s:0,s:1,s:2,s:3,s:4 + = + true + updateProfile:symbols + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/account.faces + POST + false + true + true + false + + HttpClient4 + + + + + + ${maxthinkingtime} + + + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 1.0 + 0.0 + + + + + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/tradehome.faces + GET + false + true + true + false + + HttpClient4 + + + + + + + + + true + ${jsfViewState} + = + true + javax.faces.ViewState + + + false + tradeHome:logoff + = + true + tradeHome:_idcl + + + false + s:0,s:1,s:2,s:3,s:4 + = + true + tradeHome:symbols + + + false + 1 + = + true + tradeHome_SUBMIT + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/tradehome.faces + POST + false + true + true + false + + HttpClient4 + + + + + + ${maxthinkingtime} + + + + + DayTrader Login + + Assertion.response_data + false + 2 + + + + + + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/register.faces + GET + false + true + true + false + + HttpClient4 + + + + + + + + + true + ${jsfViewState} + = + true + javax.faces.ViewState + + + false + first:${__Random(0,999,)} last:${__Random(0,4999,)} + = + true + register:fullname + + + false + first:${__Random(0,999,)} last:${__Random(0,4999,)} + = + true + register:address + + + false + uid${logincounter}@${__Random(0,100,)}.com + = + true + register:email + + + false + ru:${logincounter}${__threadNum}:${__time(HMS)}${__Random(0,999,)} + = + true + register:uid + + + false + yyy + = + true + register:password + + + false + yyy + = + true + register:cpassword + + + false + 1000000 + = + true + register:money + + + false + 123-fake-ccnum-456 + = + true + register:ccn + + + false + 1 + = + true + register_SUBMIT + + + false + Register + = + true + register:submit + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/register.faces + POST + false + true + true + false + + HttpClient4 + + + + + + ${maxthinkingtime} + + + + + Registration operation succeeded + + Assertion.response_data + false + 2 + + + + + + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/tradehome.faces + GET + false + true + true + false + + HttpClient4 + + + + + + + + + true + ${jsfViewState} + = + true + javax.faces.ViewState + + + false + tradeHome:logoff + = + true + tradeHome:_idcl + + + false + s:0,s:1,s:2,s:3,s:4 + = + true + tradeHome:symbols + + + false + 1 + = + true + tradeHome_SUBMIT + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/tradehome.faces + POST + false + true + true + false + + HttpClient4 + + + + + + ${maxthinkingtime} + + + + + DayTrader Login + + Assertion.response_data + false + 2 + + + + + + + loop + + + + false + + + false + + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 4.0 + 0.0 + + + + + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/tradehome.faces + GET + false + true + true + false + + HttpClient4 + + + + + + + + + true + ${jsfViewState} + = + true + javax.faces.ViewState + + + false + tradeHome:logoff + = + true + tradeHome:_idcl + + + false + s:0,s:1,s:2,s:3,s:4 + = + true + tradeHome:symbols + + + false + 1 + = + true + tradeHome_SUBMIT + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/tradehome.faces + POST + false + true + true + false + + HttpClient4 + + + + + + ${maxthinkingtime} + + + + + DayTrader Login + + Assertion.response_data + false + 2 + + + + + + + loop + + + + false + + + false + + + + + + + false + jsfViewState + <input type="hidden" name="javax\.faces\.ViewState" id="j_id__v_0:javax\.faces\.ViewState:1" value="([^"]+)".*/> + $1$ + + 0 + + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 70.0 + 0.0 + + + + + + + + true + uid:${logincounter} + = + true + uid + + + true + xxx + = + true + passwd + + + true + login + = + true + action + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/app + POST + false + true + true + false + + HttpClient4 + + + + + + + loop + + + + true + + + true + + + + + Welcome to DayTrader + + Assertion.response_data + false + 2 + + + + + ${maxthinkingtime} + + + + + ${__jexl3("${protocol}"== "http",)} + false + true + + + + false + ${hostname} + ${port} + /daytrader/marketsummary + 20000 + 20000 + + + + + ${__jexl3("${protocol}"== "https",)} + false + true + + + + true + ${hostname} + ${port} + /daytrader/marketsummary + 20000 + 20000 + + + + + ${loop} + + + + 1 + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 36.0 + 0.0 + + + + + + + + true + quotes + = + true + action + + + true + s:${__Random(0,${maximumsid},)} + = + true + symbols + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/app + GET + false + true + true + false + + HttpClient4 + + + + + + + DayTrader: Quotes and Trading + + Assertion.response_data + false + 2 + + + + + ${maxthinkingtime} + + + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 16.0 + 0.0 + + + + + + + + true + home + = + true + action + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/app + GET + false + true + true + false + + HttpClient4 + + + + + + ${maxthinkingtime} + + + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 15.0 + 0.0 + + + + + + + + true + portfolio + = + true + action + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/app + GET + false + true + true + false + + HttpClient4 + + + + + + ${maxthinkingtime} + + + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 10.0 + 0.0 + + + + + + + + true + account + = + true + action + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/app + GET + false + true + true + false + + HttpClient4 + + + + + + ${maxthinkingtime} + + + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 8.0 + 0.0 + + + + + false + false + ${hostname} + ${port} + /daytrader/marketsummary + false + {"action":"updateMarketSummary"} + 20000 + use existing open connection + 20000 + false + + + + + ${maxthinkingtime} + + + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 4.0 + 0.0 + + + + + + + + true + quotes + = + true + action + + + true + s:${__Random(0,${maximumsid},tobuy)} + = + true + symbols + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/app + GET + false + true + true + false + + HttpClient4 + + + + + + ${maxthinkingtime} + + + + + + + + true + buy + = + true + action + + + true + s:${tobuy} + = + true + symbol + + + true + ${__Random(1,200)} + = + true + quantity + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/app + GET + false + true + true + false + + HttpClient4 + + + + + + + has been submitted + + Assertion.response_data + false + 2 + + + + + ${maxthinkingtime} + + + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 4.0 + 0.0 + + + + + + + + true + portfolio + = + true + action + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/app + GET + false + true + true + false + + HttpClient4 + + + + + + false + firstHoldingID + holdingID=([0-9]+) + $1$ + NotFound + 0 + all + + + + false + firstHoldingIDBool + holdingID=([0-9]+) + true + false + 1 + all + + + + ${maxthinkingtime} + + + + + ${firstHoldingIDBool} + false + true + + + + + + + true + sell + = + true + action + + + true + ${firstHoldingID} + = + true + holdingID + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/app + GET + false + true + true + false + + HttpClient4 + + + + + + + has been submitted + + Assertion.response_data + false + 2 + + + + + ${maxthinkingtime} + + + + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 2.0 + 0.0 + + + + + + + + true + account + = + true + action + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/app + GET + false + true + true + false + + HttpClient4 + + + + + + ${maxthinkingtime} + + + + + + + + true + update_profile + = + true + action + + + true + uid:${logincounter} + = + true + userID + + + true + rnd${__threadNum}${logincounter} + = + true + fullname + + + true + xxx + = + true + password + + + true + rndAddress + = + true + address + + + true + xxx + = + true + cpassword + + + true + rndCC + = + true + creditcard + + + true + rndEmail@email.com + = + true + email + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/app + GET + false + true + true + false + + HttpClient4 + + + + + + ${maxthinkingtime} + + + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 1.0 + 0.0 + + + + + + + + true + logout + = + true + action + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/app + GET + false + true + true + false + + HttpClient4 + + + + + + ${maxthinkingtime} + + + + + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/register.jsp + GET + false + true + true + false + + HttpClient4 + + + + + + ${maxthinkingtime} + + + + + + + + true + register + = + true + action + + + true + first:${__Random(0,999,)} last:${__Random(0,4999,)} + = + true + Full Name + + + true + first:${__Random(0,999,)} last:${__Random(0,4999,)} + = + true + snail mail + + + true + uid${logincounter}@${__Random(0,100,)}.com + = + true + email + + + true + ru:${logincounter}${__threadNum}:${__time(HMS)}${__Random(0,999,)} + = + true + user id + + + true + yyy + = + true + passwd + + + true + yyy + = + true + confirm passwd + + + true + 1000000 + = + true + money + + + true + 123-fake-ccnum-456 + = + true + Credit Card Number + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/app + GET + false + true + true + false + + HttpClient4 + + + + + + ${maxthinkingtime} + + + + + + + + true + logout + = + true + action + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/app + GET + false + true + true + false + + HttpClient4 + + + + + + ${maxthinkingtime} + + + + + + loop + + + + false + + + false + + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 4.0 + 0.0 + + + + + + + + true + logout + = + true + action + + + + ${hostname} + ${port} + ${protocol} + + /daytrader/app + GET + false + true + true + false + + HttpClient4 + + + + + + ${maxthinkingtime} + + + + + DayTrader Login + + Assertion.response_data + false + 2 + + + + + + + loop + + + + false + + + false + + + + + + + 4000 + 6000 + + + + + 1 + true + 1 + + ThroughputController.percentThroughput + 20.0 + 0.0 + + + + + + + + true + s:${__Random(0,${maximumsid},)} + = + true + symbols + + + + ${hostname} + ${port} + ${protocol} + + daytrader/rest/quotes + POST + false + true + true + false + + + + + + + + 200 + + Assertion.response_code + false + 2 + + + + + ${maxthinkingtime} + + + + + + + + false + + saveConfig + + + true + true + true + + true + true + true + true + false + true + true + false + false + true + false + false + false + false + false + 0 + true + true + true + true + + + daytrader8.aggregateReport.csv + + + + true + + saveConfig + + + true + true + true + + true + true + true + true + false + true + true + false + false + false + false + false + false + false + false + 0 + true + true + true + true + + + daytrader8.resultsTree.csv + + + + false + + saveConfig + + + true + true + true + + true + true + true + true + false + true + true + false + false + true + false + false + false + false + false + 0 + true + true + true + true + + + daytrader7.resultsTable.csv + + + + + diff --git a/src/test/resources/test-applications/daytrader8/jmeter_files/daytrader_primitive.jmx b/src/test/resources/test-applications/daytrader8/jmeter_files/daytrader_primitive.jmx new file mode 100644 index 00000000..29ccdf4c --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/jmeter_files/daytrader_primitive.jmx @@ -0,0 +1,203 @@ + + + + + + false + false + + + + + + + + + false + -1 + + ${__P(THREADS, 50)} + 0 + 1355173676000 + 1355173676000 + true + continue + ${__P(DURATION, 180)} + + true + + + + + false + false + rfc2109 + + + + + + User-Agent + Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; SV1; .NET CLR 1.1.4322) + + + Accept + image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, */* + + + Accept-Language + en-us + + + + + + + + VIEWSTATE + + = + + + jsessionid + + = + + + minimumuid + ${__P(BOTUID,0)} + = + + + maximumuid + ${__P(TOPUID,14999)} + = + + + hostname + ${__P(HOST,)} + = + + + maxthinkingtime + 0 + = + + + maximumsid + ${__P(STOCKS,9999)} + = + + + url + ${__P(PRIMITIVE_URL,servlet/PingServlet)} + = + + + + + + true + -1 + + + + + + + ${hostname} + 9080 + http + + /daytrader/${url} + GET + false + true + true + false + + HttpClient4 + + + + + + ${maxthinkingtime} + + + + + + + false + + saveConfig + + + true + true + true + + true + true + true + true + false + true + true + false + false + true + false + false + false + false + false + 0 + true + true + true + true + + + + + + + true + + saveConfig + + + true + true + true + + true + true + true + true + false + true + true + false + false + true + false + false + false + false + false + 0 + true + true + true + true + + + C:\jmeter\jmeter_script\report.csv + + + + + diff --git a/src/test/resources/test-applications/daytrader8/pom.xml b/src/test/resources/test-applications/daytrader8/pom.xml new file mode 100644 index 00000000..cd631847 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/pom.xml @@ -0,0 +1,104 @@ + + + 4.0.0 + io.openliberty.samples + io.openliberty.sample.daytrader8 + 1.0-SNAPSHOT + war + + UTF-8 + UTF-8 + 1.8 + 1.8 + + 10.14.2.0 + ${user.home}/.m2/repository/org/apache/derby/derby + + 9080 + 9443 + + + + javax + javaee-api + 8.0 + provided + + + taglibs + standard + 1.1.1 + compile + + + javax.xml.bind + jaxb-api + 2.3.0 + provided + + + + org.apache.derby + derby + ${version.derby} + test + + + + ${project.artifactId} + + + + io.openliberty.tools + liberty-maven-plugin + 3.3-M4 + + + ${testServerHttpPort} + ${testServerHttpsPort} + + + + + org.apache.maven.plugins + maven-dependency-plugin + 3.1.2 + + + copy-derby-dependency + package + + copy-dependencies + + + derby + ${project.build.directory}/liberty/wlp/usr/shared/resources/DerbyLibs/ + + + + + + maven-resources-plugin + 2.6 + + + copy-resources + package + + copy-resources + + + ${project.build.directory}/liberty/wlp/usr/shared/resources/data + + + resources/data + false + + + + + + + + + diff --git a/src/test/resources/test-applications/daytrader8/resources/data/tradedb/README_DO_NOT_TOUCH_FILES.txt b/src/test/resources/test-applications/daytrader8/resources/data/tradedb/README_DO_NOT_TOUCH_FILES.txt new file mode 100644 index 00000000..a4bc1452 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/resources/data/tradedb/README_DO_NOT_TOUCH_FILES.txt @@ -0,0 +1,9 @@ + +# ************************************************************************* +# *** DO NOT TOUCH FILES IN THIS DIRECTORY! *** +# *** FILES IN THIS DIRECTORY AND SUBDIRECTORIES CONSTITUTE A DERBY *** +# *** DATABASE, WHICH INCLUDES THE DATA (USER AND SYSTEM) AND THE *** +# *** FILES NECESSARY FOR DATABASE RECOVERY. *** +# *** EDITING, ADDING, OR DELETING ANY OF THESE FILES MAY CAUSE DATA *** +# *** CORRUPTION AND LEAVE THE DATABASE IN A NON-RECOVERABLE STATE. *** +# ************************************************************************* \ No newline at end of file diff --git a/src/test/resources/test-applications/daytrader8/resources/data/tradedb/log/README_DO_NOT_TOUCH_FILES.txt b/src/test/resources/test-applications/daytrader8/resources/data/tradedb/log/README_DO_NOT_TOUCH_FILES.txt new file mode 100644 index 00000000..56df292f --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/resources/data/tradedb/log/README_DO_NOT_TOUCH_FILES.txt @@ -0,0 +1,8 @@ + +# ************************************************************************* +# *** DO NOT TOUCH FILES IN THIS DIRECTORY! *** +# *** FILES IN THIS DIRECTORY ARE USED BY THE DERBY DATABASE RECOVERY *** +# *** SYSTEM. EDITING, ADDING, OR DELETING FILES IN THIS DIRECTORY *** +# *** WILL CAUSE THE DERBY RECOVERY SYSTEM TO FAIL, LEADING TO *** +# *** NON-RECOVERABLE CORRUPT DATABASES. *** +# ************************************************************************* \ No newline at end of file diff --git a/src/test/resources/test-applications/daytrader8/resources/data/tradedb/log/log.ctrl b/src/test/resources/test-applications/daytrader8/resources/data/tradedb/log/log.ctrl new file mode 100644 index 0000000000000000000000000000000000000000..5ae5e491e44940bbb1c74e5e69683926bbc6ce97 GIT binary patch literal 48 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

    j5 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 KKf%=5)!i#wdAM`{ literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c121.dat b/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c121.dat new file mode 100644 index 0000000000000000000000000000000000000000..5f7789fe11492bdeb246e5cd9440b658dbcc0d9c GIT binary patch literal 8192 zcmeI1KX21O6u{p(RpO*goBm6oz<^YhDdKFOFBgfK5iv2a*=Kt|VuMPZV1Wr%gv8EA zU}0h6Bjh6>MkZEx_s*#zn)Jkkgx*PcKEM0<`TV;$k{vh$0D&LZB8pv#%V9CToWuUF zw*8S_yZaDFp5Z437%d=yC&&FO+vcj#_s9C&=a*_x;?8&62)T5U701&#9o z02^QfY=8~00XDz}*Z><~18m^`GVu1pxq#<*O^fII6F9=XTbHhKcq!u(-5$O&cm?sr zi-48Ai-Q->`2y~WxzCE*?WlY85aC1~z~eUa1GjEs(H9K82u|U|G?|vNOeQkXW|CF2 z>7;53HIdkoSyt;Zk)6u z$lDM<61&8!BsWH8x#x3Rs);U5>ets)+SC=T@2=P*-X?a2d==vN#J;bes=`PWtiLY~ zeEqa4kq_2C5QoI4xWHECWoSN!VoZFYN^7NVzi;cWcMM0w*U2TCdBvPy04#VykAtXehkOHekN1ogZ2AxgLtdb%E-L+xqkiw zxJkTHb#0_>*K0k$@&zIOYH(u%Y=8~00XDz}*Z><~1OL=ObPD*t^hVdk&PNwvPMO9< z@s;vp7o$%UA5q@(XVlj&0v#)Uy8Z@bI&1e z#(#s@U}8aRY;4EpFDbopjkBMes;`ax^78!r*;UH+7-Jc}!!aUUCp-xA{)27!eZM>Y zYwkULj6J(;@6MdGg*PA1PkKH#SG9kizHaTZe_EZ*TR)MX0b6vexSsAgez~G2HKhbn z0x5x%KuRDbkP=7cxG z?8~AzJayy02#@f^Hb(3wo64rv8eB00uJlY)rkqucl{3JD8&NCAA@H1Xxd&TEd1I0k zMr#i)PDM$tOAg?4RPqE#7I|eg_(7K@=NiECsN^O|a$)iA-bAVBvJs+^;L8{~7&T;RwDACS)Md8SW@#(r)^13WTUDTBbTrv^>(V>rp&54RMGerzU7l)P)>fe8 zu**6xQ8MoGG)d-pZh%9S8nOg#3&|lqJv$_6rObiz=zxNx7S5t%6U#h1Lz3PYEDm8? zYT=!nDW~&x_2^3Jx@uRC(O7JvEA`d9>?}!Y%e4fF8eu`MrUsX#X|U8K#CX{`l9bj8 zlpJ&^Y}ue>+~s+a1Se_<#h}Z^aRpGsU0xu`(w7oIMX6!nxtG#I(QPlQ1IjLvq^N{L z$>@NBB+gRlL8(}lY(kRUINXVZZ>cuSsc>Oq!Xr1<8(q+hFIPqn?-EH?7I#dLxaWo$ z@1cgeT&j#7-er5%12vi%()X6BqT=u z1SSS1{)GMsh`)dpo}ZH{q6uCRvZZ_Rec$Ka`MzgI^1%fF2s(UgaqMth4DN{IHoJQ;S#a5`_7)gAz{+8HgKF{+CGmJj(w%B3b zD3xQDWwG(^h+XDgRn-cm34GzK8kbh*;r;5m)J@IrcUSB&uT7>EDgyj`Sk3Q=edd)h zlK5!-eR04%TG=QpqV*5NA@dVAQHUkR#&akJ%*$F@;&qH4z>xW@vNS)X3%o%|i@^Hn zN-eL9t8~Hs4B?3R+RzF>MGM6HvzkAGW9F#@tuGa=e+(n$3tLV!7SZ}6IALBpnh{ve z{9HYr6F6mF)#a4<+51|}pN7AT6q5tVf#g7PAUTj6NDd?ik^}#i1MMrIZEfp~kK!B0 zDJxHXyw%|tl+V83e#A=Yqu?xjV&$EWt?#V=^s#-xeb(WMv*)ZcFG}tYe1r$^Jh<}l I-rX<10dV&O{r~^~ literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c150.dat b/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c150.dat new file mode 100644 index 0000000000000000000000000000000000000000..db2ff892ae2734973c51574c959c519e6cd030c2 GIT binary patch literal 8192 zcmeI0J4?e*6vxj^YfT?MHV0hVzW zZQ-uN9A?V3>}WVCg^R1s6&QAM1Tko z0U|&IhyW2F0z`la5CI}U1pXI+v+I2Z6}+bK`#uQ?9R2)k4)bl7AC2Le*|Xg6HLjbsX1I=}xqe|*rC(GMF1I=wdQ?+jL2F$eXW~sI`xPE5g-CYfCvx)B0vO)01^0G0+9#E14MQMoe-+r d2kHl!6v__Z603TH3)H1R=U}o{XL{!9<{LqZ^S%H8 literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c161.dat b/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c161.dat new file mode 100644 index 0000000000000000000000000000000000000000..a2af9876d07d74184971bfedc680db769fc802dc GIT binary patch literal 8192 zcmeI1y-LJD6ot=3NV3WP_y#tzR>6cUaaVi>+1hSpH-%WLU}s|~SlQV73N{v2_BQ(r zK7pO+&CL%%qA*}3=R(fR+cYm$!pbx!}PqrwykkN^pg011!)36KB@kN^pg z015mr0yp=U2Iull_5MCYvDI$&)6Lt~^(IkuTu+V+uHiQa0iC_(u6mzuuxr+3)-0-O zarEHGLJo0MRp!zb6Fbi$o`W&Avt%`$#AzPINj8nrBnD}N7xl|MjeY@((by@((ex@{i<;F-U*}NPq-LfCNZ@1W14cNPqW>K2N%>VxV5PRb>`KHi>w0Yd(UQvd(} literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c171.dat b/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c171.dat new file mode 100644 index 0000000000000000000000000000000000000000..b3e1217b32ccb3bdfb3ea034735ff62b630fce8c GIT binary patch literal 8192 zcmeI1y-ve06orq2l%(k&Z@_}eRN(|fTf{S<&PWV}v;!LwAhEG9va+zVure|*@d$ke zo`4O(weuqjg?eE^=SDfP?>&j_uajL|0Z?+A2&{%yU8(ABPTF5({7C=Wol50G?ig6F zOiBiq{>n(2sv9q#`$gXQmQ8HE%R^~rkcRi|nDI?Rg((ss0TLhq5+DH*AOR8}0TLhq z68K*P?jEicE@e&C{=N;f)vou`^=hknohTb&Bu56fi0gxZ##a4Swa-`BR?8x*&daJf zdI)49hd3%LQ+b+!gIAF#zyO5tKJ{d1qcg~ah^yFPz{w(Fny{B3j`f9myj&~^NocfDQoT)+0sr-#1lpZNTJ`NbF{ zKmsH{0wh2JBtQZrKmsH{0)Iw8Eg=7L2Lq$(&FY>}Jlgh$)zIp_%`dGU;H;R!@#)j^ EH%QclKmY&$ literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c180.dat b/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c180.dat new file mode 100644 index 0000000000000000000000000000000000000000..e7b80ed0f9ab16ee7410bf75dd44b9c3617abc5e GIT binary patch literal 40960 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 literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c191.dat b/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c191.dat new file mode 100644 index 0000000000000000000000000000000000000000..5e31e3bed2c2e5d2b5cdc59498a27d8fabc5ae3a GIT binary patch literal 16384 zcmeI2U5F%C703VmS=C=Ny|dpR*(94yHZe}pyOZ6W-6T5I)pvR;Q{7dms@~n%T`k=t z`=C#vSr9=YevrqAFY23w1bh=geG)}b5CVb^K|}vlw z)ZAP3yXTyH?#DURxDTK}U;dP3S(W8%F=?Nzqw9Z)s5OGI773I2OmXZ$hGPgi( zf!qSQ1#%1I7RW7-TOhYUZh_naxdn0y{O?=f2Z%_C7x4K+mFWF*|Co#aZ{bO5*4s6Z>I>w}u8 zC!o<_I7PJ3&_}efLWpfI5Ke!%BX$+0XrQT&;minOMngMtyrFLe)0#KIHO z6jH^CJ|xkqFQRDI7tV0oo7lHl!|Gl!G)e<2*qt>_p^mmbCK+!(@NCf=1%d`%sa0s= zfIesyEwZu#O(`bU^eM?$g}$&Ii@k8xd5R_u>XQxz^KQNv+IOi2;a;r*I;LI3uJ)HgHuRNvqNr>55@L zx~2qc;(2`vE!tyBIO;BF*uo3?ps_fih^7>2`4zmVPoZs*#fbviV#y&`Cka`_NAw}& zQ{7CTYU88&B=RXHW%$$qY;EbYPT&}`7M!ZP8zsjgb^xP_ElZzBPL)Dja4N&VR#%@% z!#HNndzE2g%ht!xIF2#%3f8dI+cSlHN>SJwj5@Z&o+*nyWi*x!?RiCRf!qSR7O1{Q z@10S-jn4p;5AZ1}-=_D_sKn?|c?veYg#Ha*m%oWEDzBqUWdl3(+WO}lGnc-Am#DnR z*TuiUq4FK{sr>b~8hSAaixww*& z704uVSSEj5Ac?Vzhj^Rk{jWqJfxc`PiiY}`d$#lFONj9%j&X(<+O}JCh9ECETbrv=#t)EEN({Ilw+BoE47q7 zLMD1qN;N1_%4$k3ArrMIr9@>)X{O{CGSMnf+YW@dC6@hgH6_WANqYz<6LZpmOrc^* zI{5T!7db@IBO56x2R$YoVIzkUXme=;$!w)0A2OLrYnF3FKgEeH+a_n{k!D)8nv#Ub zq^a5G45UBKrU=VvIfzWs<9IBw-wY`kXO5MY{4p&%k;zv6IA+iLqnVYcNQ>_2H&1h7 z&iG@hob{{>MjBj2#Lh5DLfEM*5p8)HIgJNGDeCa7UK|R06gbgt?0c?btHq%W-IG4CGS~#;08n0*zG+xn+6+EU-Q@Zl#j%guTZlGR$7^^tD58jM) zQ=XKsjmPzQYQ;@bT+#t2qiR<1gg!}~cj&A`y82ca-tdB+f*Clc4^u-*2}oy~7MDeu zi6`}G2e6tJi*nf zvvFB|y-y36_u*4S{cA33ceylw!O_0)6puozRhLxXWUwHxxV-TlZ)>%r??}pA@c%fq-=l0HR}C~d}rai^oxGfi!#e_hh;9T V$(aAAoC~1*!d(1s{rKHK{0C_JjD`RJ literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c1a1.dat b/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c1a1.dat new file mode 100644 index 0000000000000000000000000000000000000000..e578b73bc81acdbd462a632dfd356f34b850637d GIT binary patch literal 16384 zcmeI3IddFE6vyAp>~_zdk~zeUIgE@C;hwu294Nsdn9Ed=&B+%qik;wu5XwbL;+(`O zM6U7&Kp(;7gwz2EygpWzSV<3uxO%GgY1IAeo}T|q&-DLk1$zJx;74yG6PbyJ!>ayp z8Sek>wtp3$`0I77xrv_`U~>fpcyRpv)a|R|YJa?t4z~PIU#8&vBm5Bwdyw$BwpeD4 z8Q(gg))#vPyaHYUuYgy;E8rFI3U~#)0$u^HfLGwzQQ*N@_!_>$^I7@(pFrDXZPSl# ztNNp*Fk)zxoL_lNDj zYZ@Jx?kA@IiHAp*&qM9ug~%K2)(HRTie3msd49eD6U!GxAw)^_A8o+Y@>Nm^ zQBnMO4l~Qkw9G}465|ghFt@x)6y_|b{&@@w%lCPmi;C)hw1B1IleEC`D2k66Y*=0v zy%b4Hj6a;hrsZ4AwTOb`7jVY%LzPNVQ9Ry8&lx@yMb(O=p~f?T=PjQNLn{iBpTi55 zFQjTkN%5H1deQP#k+q_tc*bDM@~Y@sAt|0u;U&wrd5+`nsq@`{mn}au0>?w~Yyz(s zKI<}^Uzi>{Jx3NT;Z?)uBFpi9CYf6n1`%jZ4bZza`#G=n!RU)Gr6 zt0;aP!<&|u3hy^b@oW>$TD~iXT$D9&zR@PUW%we=np{YV=M#9_@-iJzPfSXlnxhP6 z@Q&qsnc?|T{FuYLhA&fv{VR%(V>oB|yl8V#48(ZCO?c1p#emO~lHx~G*tUGt34C5r zJe$IK%gYSsV^R|12^R3aC6Pb>%Z{l4O_e{JBAKI(bJo@9(5&wS~ zE?~`-wQETEf7c*9CKGU~|9^_V;hUw36lse2f`nQx#?JrCT(-ELqxgtB|1ZlF^9vQl zk5>L)%0zz$f#TWR`F~kwIDSR(eAD@V+15F(zbQW-#m@gLk>UDVQaoEY|F60lm#-zY z^c!*K|7(%fxL(gF{in|V*9p2YA*ufP%=!O1Z(8){RR7V+|JP+%;`*NA$ISWvS{CS^ zCB?I)^Z#{S;rS|xkGb>zb=M(ZQvQ52asIzaS{%Qmc)oD{zmYlSvl7a0hs^o^rXMih zR8jnR=KMd7y+FU(5!W}IIsf10X@~hBl3zOi-xdw})so^zvGf0JrSJ}_D4wnSe=Caw z^Kq0v4`b*5TUDdqmQ??I?)-l{WCi+Ls{irA`Twr%P|uR`=h4*p|6XL6k4P#)|6u9- ze~-^996!}R+i?EBFH+Q}r23B*&j0sihxv|*;>Roh-^&j5kra>bUF-k*4wHkTq}*^c zcm9764d&w{#j`Wc{|_?3=XpZ;`G7nBKlBMcpDT(V&ES%GAN7sE>xJJuJ3YS>&)~A* z+bqNRtEl-H&tb>#T_*8*De8WUm+*n@zZvj;Q`G%DS^p2ewO76`@CtYZyaHYUufVgd zfXxD|`+xNF=%3j&6Ss6cDGR{wnA&X}`F$O2M&P7e03Qs)bX?B}oRkarFIj-6^Z(VO HAEJK%Y4L8c literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c1b1.dat b/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c1b1.dat new file mode 100644 index 0000000000000000000000000000000000000000..2e0681401d3f64d5a174cef555a958beec5207ef GIT binary patch literal 16384 zcmeI2O^6&t7>2*;pQ`Ha`Abavi7|;9vqm$f=dX7rSzu{N0Ya01^o)OD_6&@l`E6p(EbkW zH#tM+=-El%Wp1-!{+fNTu}cup@rVx5!Si{$JIM33R-Uh~wmL;`*vgkLoVQPLw7b3a zZce*s=h>%Ew}*MV-Oh)-qMP@-T?#2^Z1V8I{_qZX2fPE`0q=l!z&qd_@D6wfyaV0= z@4yY@z-NR%!LQJz@j1Q!$LH6s%m2^OlI=M)bH;P>KPhb^`y12ofAZFFGhJ_m{;dRW zQ@#$jNBBXjzuND%I)fK%jvq((;f1xqz!Bkl%ejs46-`D&88F3ABBQkNT@p%Vlny8< zWikr3HYyoaWt1K$RjSD-eNbvtmr)8(>eP@?mMtYv)Ra*MplI45qYObYv{OVGqIQFX zZjw<@yFp63WE9kHkkM`lrQb)@#fom0QBZZUrdvdm0^da$x>ZKOcTox5CZk{msFe21 zPT7@Rxu)fZ^3^l*8euCGVHP(Gl{R8Ve ztf!&zD(hZobd~jO)+bpbX!s@TE36%8@C)lltk1LVfmXg_eT(%8)&NRhuwG5O})^q=zoZI;IP!lf3Pw6g9QnTtrH_%0Qb+zTMZri% znIr#~qF|(>sw4lGq97_nHAnt0MM1s9W?ueZFfI2{FL5$2|1U~Gy~OFf{J$s#^%7^o z{9mA6Vrl*_P%p7G{}-Gs6&(<*M+HYqO?QeYysNFNbeD_*Uv!P`mQmn~uG2vo1-|G8 z-6NxL;%?F*83n7oQM4qZU``uN_sS@k)5g$Y83l9NBy^vQf;nwcx?e=$U2T)m5g7%w zYpT?eQBb?4Mi0m+s9jU1qcRF=*EA@XQMh)S)Rs|DyNQ}g2mYaV;D6&l_B%3g_9^Q+ o>j7x`BkOytXIKq1`I_}L)&gp?J#>L=zsPRFf0_S(x^immF9Jlcj{pDw literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c1c0.dat b/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c1c0.dat new file mode 100644 index 0000000000000000000000000000000000000000..c5b91e2c3fef26113800b2a821fa2bb19fdf1105 GIT binary patch literal 8192 zcmeI#u?@m75J1tpC<-o8(9=Lg%K*#}rA3TD3rJK@(l7zbumejVQ7{4=PD~;b3K|OZ zBiT9MS-$vnk+q1Zjpvj2IrDRS3iWo*;(Pr>>5t3OD$A-0<9P3_pmW_xQUDh(^bLUeR^QorsGgwRhxSeZerK=R_$3sS&>;9{Cwm(lE17DT= z%L&7~e#|&&;?Fg_>sjs^8XE{e00Izz00bZa0SG_<0uX?}KN2_`w?@`_v-rTyTvWW> zHRjuiywH)sUdnn9&>7WL@ttpEWNuzHRmj@WgPjG;WDzn~r|3|^1{ee&009U<00Izz X00bZa0SG_<0>2TM%F-89r%Uez@u)7| literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c1e0.dat b/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c1e0.dat new file mode 100644 index 0000000000000000000000000000000000000000..761408d3b3483e2cb3bc4d3d46e37c5e92d2a255 GIT binary patch literal 8192 zcmeI#u?@m75J1s8gMx)9XsIY^8GsoOEn*EoqGJIjUU*)|)wt@6|}sAD0WOtjp>!ZW>r~9~a-eZ+^K-&Z<6h zQdnN6BCjSb=Z2ns-%=rk00IagfB*srAb<{9 literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c1f1.dat b/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c1f1.dat new file mode 100644 index 0000000000000000000000000000000000000000..78d701f45559f9fc67104563ad350118d55c794e GIT binary patch literal 8192 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 Ka8o0I{Qs|UeZ{u` literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c200.dat b/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c200.dat new file mode 100644 index 0000000000000000000000000000000000000000..c3a7808dd76bce2cfa24ab40d4e9e5d87dc76d32 GIT binary patch literal 8192 zcmeI$u?@m75J1s$1i=Lb3s50M%K*%PXb~gO0uod#zy$2W0xUtt2yk3-Nn}DnLxH}d zIQE_8i(i+>PDFysP}eC&nJma vuIq>4T8HfiLRaS1Ri_vsfB*srAb95yH6u_15*-aC4FwGwFa=XE155#DJC2+XkZ936 z$>;moC%?`o8xb+OoLH|juTvHCX-w^BDUI+)cdnV0u0o^}i;Ol`|EsjNzf2yza4NaW z2l{v2%qVFR>T25eEOxaR4g??o0SG_<0uX=z1Rwwb2teQ;2^`K_BWrzG{9s#eYevS+!R9<8rQYf;t#g zG2c#Pxn3FUrKm3gI%oA;@ju_l$Xr9z4yvrXdT`}uvZyld;R@Tco6!(J009ILKmY** W5I_I{1Q0;rCxNLf!~V;?yuASIbS~8Z literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c230.dat b/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c230.dat new file mode 100644 index 0000000000000000000000000000000000000000..207264a3f408e8d40df073c544cc882220f9e78f GIT binary patch literal 151552 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 literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c251.dat b/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c251.dat new file mode 100644 index 0000000000000000000000000000000000000000..c6fab1e70046b4255d1278d726c8d981944b3920 GIT binary patch literal 16384 zcmeHNOKclO82;=@ch`>dez;Bg06|-58`YsyP1093j+2_^RoiI^5=2hCX)QT+@S~3# z5-Po*!U1tdh*J+75C@PDCnO#hkSZi@oDc{E;zDo0|BtAjBBLSW=HS+EE~EW_D%+OghKCDOQ>1?j=ybp2q0Z^}KR3Hx?Y)gR z@0QCqVabAnKhuW@l{@j)YfELaPwTY?wYpd{pc&8%Xa+O`ngPv#Wo;z!zXT>>x0S`b9vWv951&#gMCQr-#YGNtuw;rS2_;OUW&+)_iK zP%1REmO61_=$Mllp~Fy;{#J%ZLm>!snN>*cTW^{H&46Y=GoTsJ3}^;41DXNNfM!55 zpc!~v82AWr8pFLdh61AKLWjUX?5~$&4N*PSegmC?6R8Khm`%T0A`dBBDCU#t zY*8U$pMfrcC$X_%9g98tMR3{;5q2~c4(CJdg6()M+^-LLulf`5v zcUfg(_FL!^*o7cB&!lNeMzd=<^7b~Id@-#y$9?D*=tB=fNl%a_&DC_qxvT`^_ai7U zfSq+Fe9=kKbW?!{8rb8eATKMPC<;XM z8rUo7-LrN|p>{V>$)MZ7K6ip`b)OXy5q^xi50Zu0d^j?>7>mRi;D0^?cN-WJXoZg+ zBnf+BMy;`llLFo7EI$MnV$qAynaH#nhJ{mdTGKN;9zGYDwUyHM;j}yvl)=<|EE1ib zJ0Dq6Lh$2^JBBKQ^h8&}XvJB1aZwiWg-AGRH?bzz9l-dwJeS0TJQazh1vM($FmAhS zFbK7e&P~m$Oow)iPsmH$oe#~O)DDb?-Ao8!){ZTyo|o#|nA=v7xgCZ=(N>7b(8O zziJDc6}a~oF7dvNC5mSdqaWaZlkpC0+TY+`;LT5P8t{F|Xr7~7ZvD-Dnb+n1r>xTb z9h{HvCP(W!=ZQZ#6Z0>r;Xfv&4_}zetuZdgRnCV>$0*X)@_umeKK;Lk*1RBzxOMYv zEvOv3`oD7Mt>XkV*8dObCwx~ES65>Ng>_iJ$#y__OGZ)IUm3v8l9na@s(B|I5i+?YC6lqr6L zbvn63)SO%*mAT-NQoO7eFFN@`Q%WyjvLN4&r*f&4)n!WJ;n+oVw;*wT1cw^J)-;*= zHPmaeW*@@ghUjIRN9sm(c%P4D{9!!%0Qja1ls=PHKHY{~aP|Cz)c8BmUxjGaEoe7b z=hGB&k(yE3UW3IxIVdhj_3o-Zv;nF5>E^NxOXbQ4Sgif&KJB73abX%#{cj?<=}WBL zZ170c#hL-lfM!55pc&8%JlYJHNAUvr1;4TyH$Gs$z*u6B!045(!Pi{7;})y;9f$BT z>G5x{OmQ8rQ0%97^C75fGQ8n=rt>fcFP>0lc@_W$>P3WUnc`gD+U^dv3AX b_k_7$lJ10$&$*WLf0SZX|G#zT-e>;;jOu!T literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c260.dat b/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c260.dat new file mode 100644 index 0000000000000000000000000000000000000000..25f81fde784105363c372eba91f6175388235f63 GIT binary patch literal 8192 zcmeI#u@b>R5P;#mn}{nEdX-A+0X&0YhQeq(1ZH$RfG6-+YQ4@Qur682oG3I3^Is;H z&F;-@?&~635pjAyhmUg}=lW#zdQRheIg<3p*NIlvMYU^-I@&zg%Qw$kSS*vh%Fi5J zHSdNZuO#5CmTJJ{onf-wck!@^`wyH wy1wVmRobsK&Sb3DTxM0C2mu5TKmY**5I_I{1Q0*~0R(<5Fp_@J@zR0f6#Y9cqTpT@tH{d|bj(Q4xw3HM?<81yW zJlgjPFMJ!7gNPWtsu9_k*cb+14|6(y)}xdDxLjyur&lI2@SBV_*Y(%Y+rF4RM((NL zT{bbk>&;ApCT?FV+Md~|m1BVb0tg_000IagfB*srAb`L>3S6#7BYXWa|AQUbS^D;^ zzTPb)sU8`eC2I}>dS}g3{y*Qy)RZn8ZR={R_p1F;=CZ15Ynu~^Z!SSZ009ILKmY** W5I_I{1Q0*~fu99(*|@z$K1^TR&n;~L literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c281.dat b/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c281.dat new file mode 100644 index 0000000000000000000000000000000000000000..cfed875dfceab65004fe1b91cbefd660cea0ccb7 GIT binary patch literal 8192 zcmeI$Ar8VY6oBE^iER>v#vwtWI0HeW&}bmRfk1KsZonnr0Ml>(Y%uf+c^G zy|wRkYxcQ4S&N9#%Z|jw)WtZ2dYsewvmA}|$K_NjOTBWDPS|Aha9w{Lt;e56kDh-j zdY4P|?|L)C=n%iJ7TuZoww7ao00IagfB*srAb{RQS&~GB8)4O?G9~wjOLRU?Q`!GItqmN?d$`hyVfzAbchAM`1#m1bdH?_b literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c290.dat b/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c290.dat new file mode 100644 index 0000000000000000000000000000000000000000..a85589e545d81d6ae0a080bcb44ba28d846f9987 GIT binary patch literal 8192 zcmeI#F$%&k6oBEEAT@}CcmX$E-CXntic1Ia8Y;MX0YT{KvAlqz(81YBpJ`)Dt%HM$ z{0T{u_tK>Kw#r6CjJ9X7zK?ug?n1sC)A2nomGH;uTr;aI+X;)>dbkUdZ=P4TSXTDR zKXY)=xEYGP4yoDKpXqir8A1pkfB*srAbwe_@>s%c3oQ?0Sqw0MUR0tg_000IagfB*srAbd`` MER$^4q<=d<0Mo1*Jpcdz literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c2a1.dat b/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c2a1.dat new file mode 100644 index 0000000000000000000000000000000000000000..8e2ed6afe90b6e9bab82029f98a338a3cf455bf8 GIT binary patch literal 8192 zcmeI$yA8rH5P;#cizFp%Kt~A`6*C}eBo?3sBr0eqk?5&tnSv>p0j7Y9ACVIR5-s{I z%49v}E?KxD-)~u`K-V?%Zx)KyfWW literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c2b1.dat b/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c2b1.dat new file mode 100644 index 0000000000000000000000000000000000000000..2a2969247718ad8c76b895d72b43a1f781e3cbd9 GIT binary patch literal 8192 zcmeI$p$@_@5P;$9mTZ$e0uBoXg~t&L2Ez*=fdq#^F2VB#I9>*g1jie|tzDOH41y+q zlik|8ZkK&-m5qoPy^0apnAjKwUk`ISf0m<>{?NxX0$OL)Q~p2S$iQ4&HaeHpSnoyqnM`C})($o&5?@_{hyVfzAbbTe~jZ7z9oJ zP1cXQc9;F!Dk~8&`s6LLePa8t^Z78Q^Jmd&;g8FSW)}KnA}znkXmMSCZH?uR!&}## z3f^S{y{itU9~5!>D!r|lZ7MMq2q1s}0tg_000IagfB*sr{G-6`ur{*PFY`axk)5S) z-|F-AM3U;2!B(>JBA{_rp7Q_sMh52WqS2|y#yZAYek>iC7P-BS`ISU`aRGV+5I_I{ a1Q0*~0R#|0009IL_*q~ibGNsBpFLh?bT1nK literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c2d0.dat b/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c2d0.dat new file mode 100644 index 0000000000000000000000000000000000000000..c906363738017ffcd1a0316d56d8c226b6457a69 GIT binary patch literal 16384 zcmeI1&x_MQ6vy9WOSk(=L=W0MxYe$TNMX{X$pnh*MbLw?D0=bKq$#XmWpS%lPYZhx zPx}|>UA=mfJ$X<>58k{e;%WZ{eVH`fb<-vUWKsD}>6^)WFEjJ~WD*#L9ukq@e^h3) zEo-~qB=P+|ZvPyX1MZ2Js~p*gqeqjZc^F$eXG+%r|O?J+(^HzUteGrb^C#j~zSe{aW^ux@-S&S3(PEUxt3n1cZ<2>3#>ie~6UEfE z7~6MxEGGAz>4j#KpG>ak&~zSGu#tW=a%AT1yc=VxY z`8|HIySaIGv#Vq)J1-Hla6)`5w9K~0i`gE2A5eh+2!H?xfB*=900@AFU~6Ehc?bH2T%w>QT_CQ^VD zAO%PPQh*d71xNu>fD|AFNC8sd|5D)XyO#`};XO^?@87^loZUTim&XrTYJ)q%PX@2S zJNOVVcXV*_^gW+Jz`oX2=SSn^*mF$e9{wISzJ2V?Ckg%?Qyg=+3ga-EObQX_z6g}| z<06;7%5~@qY=JJ7u1aC!Vx1O3wa0OAPO$5P@Sb8fEN>?B0`rKv^3^J=gh+zcILvpA z-R#91S31%nkzKr}ncs`IQe`ehl63K&VYde1Jh;+B)(zLR$G zUV=M=@Lq;Z%UcCWBt_KhCkyTmpW{gtgqW}B%J&LvS>8g1r51778jrk1oKJ9l+v9NE z#`RwlAt^u#kOHItDL@L40)MZ7y9e6R9n4Olt0x<(HR3 zzqD7jZgjV}8%v)e75n;{$*v+p2mu5TKmY**5I_I{1Q0*~f&UWNpSDhGJ5zYUj{FyZ z@7M8=FCD)b+mk(a%fpR_-)$f}$Mf(7jh+<3 literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c300.dat b/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c300.dat new file mode 100644 index 0000000000000000000000000000000000000000..2053e0105b40818ea4cc1ea3a6c1cb5edb9972df GIT binary patch literal 8192 zcmeI#u?@m75J1s$K*2&3Y>^6y0a$=0qM<`c2CTypbc_HOCr5$_1qBWI zw&I-cEIWQ(WGf<0pQ0sUOvBh5tlrFNe6L!R{y3d!WnET>wrHS-dz*aozWK#6+N=7^ z?5cS;7I_}hvTr!k?^`OQ5I_I{1Q0*~0R#|0009IL_%DIOY3F34ce4NcBt*TpTUtFT zbW>fQxl5hy6k%U-nQPBqdcBAU0R#|0009ILKmY**5I_I{1b#0tkx_Zb>Nq_=05p*m AuK)l5 literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c31.dat b/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c31.dat new file mode 100644 index 0000000000000000000000000000000000000000..ec08143497fba7e83b443265253180190e04e8a2 GIT binary patch literal 16384 zcmeHNON<;x8LpmLPxribXV>xOVUjqBz0QM9s`^n~9h=ZRV!}ft;b8|89{mglBrdQ> zNL(Ue<-!e_TsUyR;)E0-S>l2?S>l3nT8R@EWC54le8>g<|F0Tv&(3tW5E2ro+w#9P zRo`Fz*WcAu^?ft!kTGV#f4sKHj>y){vb|mh<$s#%M0MlG*P!M5@ZVu@IgbNJkP z<(pdPA3XneU0>^qDlYyF{tUTp9Oyr5mhRbg<2A3oqR&8|fj$F$2Ko&28R#?6XQ0nO zpMgFDeFpjr{O@Jp?VrE@OZEeZd&%#A#*i)}O<%p1?W?tHYXsDNz-}<-z7nvpWZaI4 zzQta!j!dmEfAP)(h~$gxx~Vw_fAP+PKY&?M^#My>9kK&z9Rs zk35BcnTR=OLpB)ScO61E{ncln&p@AnJ_CIQ`V90L=rhn~pwB>`fj$F$2LAsu@E*Ga zgS$U@EfKqGHM(MC17-h7o&Fo(@IL82CjG}89$39SKn~A& zkZ~?zmkSO=zVu@^Q)Pr49xlNv_zxWZ6zB{ZuRIxW;Q^rZT`8dyrm=*Nap|Xi7M8^M zx8`ho0xx*(X1NMoE_rdk|2WMQ_CIG6!V49aii^A}o^3WIe88)Sa|NOU_8;V4<>sm= zP5-_W~VpfrR&9z)RXuLdw}qfigM09-jz?AojHjYq3bITB2z_mGM}dw zY+vKk*vqTq@m8sur3*YP+ZTk#G%SI5)*Z_ymB zF?*tpPrLe`uqW$ym}TwpOxaU4JSDs}{uw)8$9Il*n_Z~mJIA}j4(fPZz+2;4u#0s( zPOw(|E_=F;#|httAB@;Db$nO;2R3`QhWGIWY3<*!l2^$gf+Zo~up+cCp!U>CULyyQ zN_dA#-0|90TzlI}Ue|ZXa@g|9&O7W_$(QsUV4>$6R{oAV>{-c|$pLmzPYDiNV{1sx z$V$FK4qT*RAUHhbb_d%^zN*Ji@Ji9T-|jH6lB@a-VNt6+>oq-wScW+2IM6q~s8! zsUPqFUTGXdv%`}t$;g3cei`r(=0dx}d6wkl0B>|Ht<871z><+rK)7FugWz5N-> z>7KZ;DJRB}t`yV=n|7(2M75{K-_`kt-o$rSe!~YGw>wG_) z8vbwaC_uF3XE-zb-{3pPJ2(7a<8fzi?|<9yf5kly4xGRrNDuO42_jF7!=bAZ!o%aw z*23`rReZBPH8%V|hI2Z^ghxa#bU|qXQ6fz-JiJ64$0g|nbHo2@ct3DOkcMt5xrryJ zq^M%jgBFJWZ@^bV>pO6iJ;v`C{tsFZoDWG*DwYx__^il z{&OFm7YeNH_=Oed{);q2&Ato2YlVa_ecy*Ax9fR1jwK1N{0vq--X+#JV=L1AmzjXK z+K}1C=jF^SrSXvpK}hM0XKuxWPeD$AtpewB+w*m{trrQO;Rb-Do$$>v%EG#&<4MCT z=Rv3Ja@xAA<4MaB@STdq8S7(&uQDMy$MXip-yF}r^%CKWynyvecIg$)!`8=j`~`+z7*AO8IdVv)lpwjlQ5vUSv%|E` zhx&3Y1GB#n^Sq0kbM^%+Ply9MH?T%?e&+zoW8$T=9~0&twcbHHk<@w%?eraN9q&^; zwb~VywQ4Z^2e#TbsfO^QLoCmJgY}~;R8PMDiHsrI$09)%SgVq-;io}xCO82cR T0_+g$;roBX|6ker)%X4d$DvbF literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c311.dat b/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c311.dat new file mode 100644 index 0000000000000000000000000000000000000000..f60c260f85bd9b0a9e1ac4fbc0967fb1521015d6 GIT binary patch literal 8192 zcmeI$yA8rH5P;!x5`~no0Ud25Bq~+_(au1>-;g8#yW>(rWk*+^vw7BlSw$}3J(Y^1U z3f^S{gPTq!4~n>Rwb9nhcC{EA1Q0*~0R#|0009ILKmY**{!!p?+!|Tym-!#;$gVnX z-|F+tMB33SgS}+cML_GSddmOj8yT9bi^jb&o9G;C`MFHBFUo8&#oCjH3os&p00Iag afB*srAbVZcRFqIrAO@g9)UwmeL4+bQhZ0=*mU9p~z@+^}kAM`^)&z^QWS_ zTwrk5&5WWZzOJTS&-_q};XnWa5P$##AOHafKmY;|fB*#kk-+J^H?q~2g%5V(tnBTr zA>T}-nT`yOl2?O(R;xM{{`p3R=IW!JewnqS2RjRx%d*Va%{ER7YatMT00bZa0SG_< X0uX=z1Rwwb2>e7~Dr;YVTTNy!_+>2u literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c331.dat b/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c331.dat new file mode 100644 index 0000000000000000000000000000000000000000..85ee72b31368516c6de9fbe3516e0e3229ea2755 GIT binary patch literal 8192 zcmeI$u?@m75J1s$kdl;)Kt~BQRLp=V5hG9o5*-bqVgfc`3T8;b1Qaj@ob5PrLO`NL z-;y2s&dJHIi)AAsM!Ri^8&fyNL&(Q5oj=Rg2!CA8G_%s4i*&;#qs4XowY8Q%j~_k% zR`e|w=->5WhEWl}uQs}x`K}gYfdB#sAbHq)$ literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c340.dat b/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c340.dat new file mode 100644 index 0000000000000000000000000000000000000000..d99b11a3f2dfe2333989898bca9463dfb265ef5f GIT binary patch literal 8192 zcmeI#u?@m75J1s$K*mB8Y(Rx*8GwQbEE)>L8i0goSb&C>ozfsN105s4;lv~|p`f8a z-%*^)o#l&P7ukr2(fc{FFxxQKr&zD&G`^Q3Nq>BuX=PPZ`*BfEo4fe(&GY6K%Ve+e zGe=j=o3Y5NNyEOOr`tDFNFjg#0tg_000IagfB*srAn;!Thtt-`TF(^!@3Rnf-cA|o zNuh0Z{lJ{7bZe@y6)$tWym-^CYD5SifB*srAb%c`MXo7z5=i5{uUv--&9MZ&vF5D`EC d0R#|0009ILKmY**5J2E3fuStizH|39egYK>F4O=3 literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c361.dat b/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c361.dat new file mode 100644 index 0000000000000000000000000000000000000000..b5c8f259d0d1fefc112f60325bfde24724aded2e GIT binary patch literal 8192 zcmeI$u?@m75J1s$kdl;$3Fs)HqM~2|L`_Fa4M=n}luW<|Ou-be0fLqV;B3c{69N(~ z`j&FB@0?h9T~5{_V)U{jaWQo<4xt|Bbp9+xE&Xvh)yh(@T%;W~89iLrUq|Ed$Kk!} zpNih)61|(=%pf|%@2f<2X1=ZDSRjA^0tg_000IagfB*srAn=a@`@_b_O1~`pU?*;t zy?tw_*9&Q;ErXrpWh0<*Rz4N}^NsY)*=JkxqH0?YwihswSy36gj5Z}sK0!nP0R#|0 a009ILKmY**5I_Kd9|T6S@Vl>_%i{&Jf-Z#s literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c371.dat b/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c371.dat new file mode 100644 index 0000000000000000000000000000000000000000..ad11f01b25b6bd995142e4d731203e66b5792409 GIT binary patch literal 8192 zcmeI$u?@m75J1s$kdn|b0v)1)ii&~>5H%AZIwU}%qoHI1HedoureFq`0?u|EIUyj? zqHie|`!3EYuZv|XB1SJe5*Je!;}Gg`PUp{J)Y2c9Gp(%k%0)WiA*0Q8{dF|9KaU<= zzbkr|OZ4t~GsCEff36Z;&wO9Wu|NO;1Q0*~0R#|0009ILK;Rz*j;EcGjec49!A{&P zd;8Wiymj?ljvvODX&o?qKH=k{-imE+&u8S%5XZ;44-W1Q0zFj_R40w?^~Xvy7f69btO#@xqKVdPyGMdZbWs{AI=VbU zI^Kc~iHCr-q2e*0yv92LKSzr`*8;Zc9&iJtk&r?pZubDfBVMzQVMb>U{_3*NUrG$ebmha~$9Z^g zNXH{6U`2aDJKP$d<4#Ffn!RpZP8X$x&!r)7xrH^6vrwf*wNGnm8l z`S$+m_0Fqexx3RAaHgaJX)G2PKv2Mh4O4H7LEDJqCBw>BNscK^QJ66s-e$wxq#n_s zI9@Vr>M%mgzJSq+WbY1+yGSESfl)#o*ojo{mS4RE@BeLuW!dN3ePb4nd4++kcf2qjTV%=na7}HpBts!0Km>>Y5g-CY zfCvx)B0vO)01+Spt3}}M;flcpzEiZnFM`-=ul;(otx|cg&IH=^ToX-)o-?jyp%aox_e;A_JOa6!<~I<`&LWGSVO`8I4D}!FiJ_ z8f76T8R~JBae^k9Dge{*hMJG zMh!!+b4%5z1ZBynX^b47JC zmesuVkoN*k;Cxw`Q3jh5?>J~!FoJzgxmwF8b)*}Fj+aCeC&^;vNDMdf(qQUJsDWsJ zP5wYDrDT+u{5CYnAF4o08B3GD39Z7fBZYp~nvCCLHbCVkp`soTwy`u?_8}r Q%Dj>u!9@Y->EUz!3ysj5U;qFB literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c3b1.dat b/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c3b1.dat new file mode 100644 index 0000000000000000000000000000000000000000..3a73f40cabead56cc7b0b2c4827553021846d530 GIT binary patch literal 8192 zcmeI1J5Iwu5Qb+RDRJHjXF#E{SU=);B~Czrs6e9gv!Dhfx)c!6(9%#M(bG{j0Bq|$zW z5BlU!Bbj*;sc6>Qhe6?=I<_Z$t$zSR^3R-9#ZvjY{zDj%KXC)>uR@)F1Y`0$Q8>f? zkNV8;oFCg4BY;*;`so?)41=aq3P25}@J%KlH^aKu0ZZ4idH*cWNmXd;K zoXuatqkXUN!nc7eM8xR%8j+2ujbZThFsJiJF>2|L%aK-QdgdZ+zsYEGU4I>o?RSG) z$K4e?%O<*4y_jCm#OV^ z%iiAA*XxBe(_aQ_$;%%BjkEGD|DA87Z!RtypNndu*I3(+?J+5;2b&d1?k+(@009IL bKmY**5I_I{1Q0*~fgc5iGIcwTt^MfxGuieXjZk45o7=7~Aa(&|ZxC{9>rt@dfYT=K|v1aD_WFqab$!Kw1e{GHBkAr*1 zpNih)0^OSqrWY0Q`zpPwnXM}^76>4K00IagfB*srAbheKZoe|J&@T%=*ey3p z-@Y~E>xm@QD}#+>K-rbX_gV}2!JFWS)%KmY** a5I_I{1Q0*~0R#|0;1_|R%>4F)Jhm^H*DqcG literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c3f1.dat b/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c3f1.dat new file mode 100644 index 0000000000000000000000000000000000000000..08acdcee31e218c5d9c3b4f62ef38fb0f42c8e72 GIT binary patch literal 8192 zcmeI0F%H5o3`LzHwH@IGY>Y55aR$W95tsqN#?p}!a05=kDL6wJ7&rkqNmHezAhDun zDX#M!*UH;s*@}qKWi4?&bv||>A8Q&vD{ILgw+qdzb>$-caL8zL-G8;t_UGws=&PcC zIbl@l$4sIo{#?Vmp827nv4H>tAOHafKmY;|fB*y_009X6BZ1>-Z)Br43lHqXMcLb3 zL%y9zGaVTelGlTP&Zw>m?|dU;bM2TM$;ub(?#18*9@Q?- literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c400.dat b/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c400.dat new file mode 100644 index 0000000000000000000000000000000000000000..a23e287bb3d2910cb6c52d61b965ee1062cb2f55 GIT binary patch literal 8192 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 literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c421.dat b/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c421.dat new file mode 100644 index 0000000000000000000000000000000000000000..c5274a22d6f36054b67ed0d6f2a16670cd657204 GIT binary patch literal 8192 zcmeI0zfQw25XR3<)dU8FcmpKbPLVE3l|K?ID`JThx+S=o7y+pZVqxS7cmbY>nGN0o z&Q4rKC4g8M(07r~zWZXI{o8E1AtEKs*vR^c^?m2`eon^koo%JR49`Tlk`@r{yPuR4 zm-t)rhSb~L^=q5&tz{GQH|Z4jiVV!RHG{hW1t|~!0T2KI5C8!X009sH0T2KI5cppN z9v;_c{L6;HW?BpOap`f8a zza_u!EMNR}k*$b0?V)9HEaKQ5EZ>dk`rfuA{Bb+i%(}@A?a)Ard)s_7*M7N5?rJ}? zx@p`^M4m-@?u|A5z9&Nn0R#|0009ILKmY**5I_Kd{}MPHcTP6?Ci}n7;;MXmrR9@E zUg-IeyS~D?{&hs>8?kdI?JewM8f{y3d$X02B)(hZA@7T5XL)>{5De)RoQ z(Yst=aMzm|MMeC&TJLJ+`&x_%0tg_000IagfB*srAbfaii?* zUqil`NHaY$I7nU{1hkH-r@}tp$k5z;w6iF)_UOTupUJY!=my?>PIC1DdIS(a009IL YKmY**5I_I{1Q7T^U?MBOx_2t3FYvf6QUCw| literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c461.dat b/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c461.dat new file mode 100644 index 0000000000000000000000000000000000000000..e6d98541fb79659dd82e6c495be7eda4795dd219 GIT binary patch literal 8192 zcmeI$u?@m75J1s$h#Z%UKu3#&M8ynr~rwMhLQ=`fQo6D0XjB-!;T{-1VoL# zB|G+=lT%)2%SJ?u_E*dNX#JQDF`veC{wP}`{Bb$e%u2fx>Bdb)i|hJpYb}2o-Fo4z z49z7(^F^7>_1V$#Gnr_gmsvf;Yg8n^hX5l22q1s} a0tg_000IagfB*sr{3tM%W!UMgJwE}e#Vuq2 literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c470.dat b/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c470.dat new file mode 100644 index 0000000000000000000000000000000000000000..c9f2eb1cae75e19bcc6f3d1feb17572a3f80c36e GIT binary patch literal 8192 zcmeI#p$@_@5P;$9(u@iO9zjr8Bm%)BU=W0tKmZ92O@b%kvGx);9s!Qq%9b(&20{KV z>uz^VZ~fe4Cn8So=g4f%ZEjAn-ppxyuSSyo_&V3hrmXhjqOLX%@#UN6Ei6~bUe#xg zu9|makyn$JeXVCWv{XnTfB*srAbHJxYTKeO1q?Nf|xkx)~GJ3eKzmCS^4})9B zKNY>pCAwF=nSOML-&cw5%zRzRu|NO;1Q0*~0R#|0009ILK;Rz*cKel)g??H1!A{&P zd;8WUUorr~3;OQZJwY literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c490.dat b/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c490.dat new file mode 100644 index 0000000000000000000000000000000000000000..63e4bc6727d114b360f1bfd3021e394a5ec27ea2 GIT binary patch literal 8192 zcmeI0zfQw25XLX1YJ&s^l4R>l5fT7*klQYfRnHnyT01`j~ zNB{{S0VIF~kN^@u0!RP}{6zwHk0S#j)meJK&%=^hEr07Z)#rqKLG3IXZe=Y1lsqeF}>UD$a zz9sAnP6v+Vc0J4XJ=lP?ka_`UCqd9+V#w6i%*`E?N zC133K{1boO9j%CnrQ4=l%w3E_@MBHJkE%7~kJGU@3+bAu8y2x#F7vOgm2%e|bMtz1 zmJ|AS`S38hB(dM!sW%A+5(t0*2!H?xfB*=900@8p2!H?x{1$=T-Y_lYO(DO}$fnxu zw^s(gY2<~J47Q}}LO^m$s;dMnKgk8@ wm!hl^4)?neK>!3m00ck)1V8`;KmY_l00cnb9|@ePC(k~*IHH+HV9NRF2_cLyLI3~& literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c4b0.dat b/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c4b0.dat new file mode 100644 index 0000000000000000000000000000000000000000..a8fed1f80bff0c12ff7b354d56ac63df63cad76c GIT binary patch literal 65536 zcmeIuF-ikL6adgaA;c6GLM#RCYy~SJV2%)sUcfUL>pg;(u(z=>mk@Fw{j;0J5MyCw z;hSOp%>2K@?7Vo4h?1kWK^sSH+zx$xJD2N^P1{NTxSeO^p{q7^I?i#Jmyhe_x9xRy z`PQ9j`lH=%mYb(cl#7U?zOZL*?;JOKDpCXp5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAn@M=PR~xBW0|imo0kvT)xkH1zP?i!j`I7fvi?dBUvfQ(+qlcV$hod+ z%wATRS(H`nG0(0MAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5;&zZ96p Lb$9*w^8Nl3kklJ` literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c4c1.dat b/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c4c1.dat new file mode 100644 index 0000000000000000000000000000000000000000..6e1de5e605c6e845f8afd1abd5b1acfc95af1cf5 GIT binary patch literal 8192 zcmeI$u?@m75J1s$gpw2#j6g>T6%|8JP$49GYCxi+p+pS822_jyOE3dW0cSgooDh&` z(YKU~edol=>vFOd5u=wKiHoU=aR~J|r}JkqYUz*5u~wFP`y_{yG|uKMfyU z|5WrYm+0N~W(LtAeqSZJGxKdF#{vNa5I_I{1Q0*~0R#|00D*rL*dI4WR{CY(2Rm`I z?Co1aym$B+b3P$8l3 zD3|k{6DO~WtVG1=8HTr*TdarFuh%rcSEE(_IGt%{5xf0x8R*&5&5Kz3E?zg~Dc)hv z3TgG4lUvA3k!K^WYed_#*fwfR5I_I{1Q0*~0R#|0009IL_(y@=VeMq8UzYywy=9%Z zZ%zGHBg=LD&|O~T?5w$$xgHDz5I_I{1Q0*~0R#|0009IL_@%&9MsfT7aol|Xt(O!A literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c4e1.dat b/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c4e1.dat new file mode 100644 index 0000000000000000000000000000000000000000..02b55f6d64335c27e6f260b80aac667481f15c3d GIT binary patch literal 8192 zcmeI$D-Oay5P;#?hP0I^bR7~DibG&9903g^I1CbntyPJqq_! z^e&s|-}PpO(IIYME!s2lO)bX)0R#|0009ILKmY**5I_Kde-zjq)<%~4W#I=qv9s*$ zTSL8BNHc92Y$dN60j;y@sqmj~WMD2X+qwB_*?K5@0aKaz%GqYLDRFWMA_52?fB*sr YAbRREYtEsOVCJQ~@1ea}!fioH}xxLYca-cVj|K zZ2TGq{s$Xdxy=WvNl_y_3Np|xJtrm@@-VleINJc<9RL)vNis_80SaBehBkFVzDqE zZieM{{xTaB_4>xzW?uC>{W{;PpLM!^MmECY9T^+Eck=%s^xl}5K@AvFGRyv1;B<7B+YS!=B6}_)}T%Z2WB%XYnkCQm#e5mBrx2xj-F9{3*LJ}v$2_Znbe(VrJFs#@_ z!eRppK!zDXYj7@M$vzFCLmf9vDFs*ip9DxUc+{yPA(eUiY=@%_ppzunpK zji>%z*EibYinD*im%gk|_Ue}-$bGKs_()V&(J9a=&?(R<&?(R<&?(R<&?(R<&?(R< z&?)fIQ{cT{{OMQlJskJGzyCRqT_&4;_}D*xxE3}nwC+8)2+plcz->!9?7-*?cv@W3 zwdeIK_1wdeybN#an$!47J@-CD*thCEP_Oi12hOCDj;QdYETmTz^SKw6MT&3b68|!P zAtm&o@7xOQV>8{+DbOj!K6xo-S6jEwjWjE(p%OpN#g zm@>c4p-4$N6yNjXYVIwwIla|6l(^2JOkrlkpTVXPe-pNj@I$W*g1}4XVRbMbozvNZ zJ52bPr@GUKZ^Ow3-)DVRY|VHkaN3AJg@;V|JsTcw^67?Ob-j8HJYvLm z;fxV~0FN5+hp^M&<5PUi_(yQoh(CtMn*4S5Pj3Q`8}X;`gb{xx)GHhiR#lYCf);=z z^}=E?_ljy6;rwy=T7+ei@d9QKg?iN}U?kLe4#3qBm&h_%*TYz-*Ng%tLcMM>BnRj4 zWe$k^I89|3*F%c)Eb@{pr4JEKIxUj4ENInsrb4}86o9f`r~`s%naXHw4|fRlrcuD1 zLcPTS0baRW#4@O z@eab+AHvCJ1~%-7*TP+v0&I1TFSbwDVCNJeXWcm&ipi~`PpdY1#Ds4P>N=qr8v z9L|DT8U;KCDl-XihoEw!fDx#|C}4cdF1oAk6zCKeuwc%Li?YL-(*Y(#Z~U{5@W@f5W45- ztb3Z!xxq|}>fsvWWyU>1`;T-yHJ)@4}0C=H>cq1GgLHW^v#D z>$=`;G65_7zrlC-{G@HmceVeo`7v&uR_>?!1MUCY@`u|0Yd-EGR<}RW{=Y4Mto?sm z{zUu#vQldw)~m)|5+MgM#e`!zcOF8G1dOREq|u{e_Q^h_Wv#UCoJv%F;^Di{l>r9 znR~emP@hziU8HHNn|J(9i?f={I2ipI)0Pc@-XIFpslf&iUD?_Wy19GwuId@-0jI|F(Qv`~NESOUfhT1k2D%5+!@%k;`gra%59PM*J-i zGrvkpAD2j6P*&>cSRygv+hWfAY*|TcpVr@1=_AJxsS)253#0K2#4|?ikHk46{#ZO~ z#Gi;yGC%h*i6KLL%91|EXK6OYr;PYp;?p%hC^F15t!@9LP|7G^Td3zaU>Rlj4N;;$ zk;l*A9-*E$3bU&wimeoHw1HJ5+D_!6PTPSs+kYHdaF2t8+p!4U%Zz)38(fdyDPp;qL9lO9 zjeV7Hbc)6^{0HM77=Oh0CSjl3>F;t2+k|a$4bBd?&%M_f0p~i^I9CY8CB}-e=2%od PnhQAa|4;nnXWRb)4H#28 literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c60.dat b/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c60.dat new file mode 100644 index 0000000000000000000000000000000000000000..4896921f0d436a6046de020e244b450e21bb8737 GIT binary patch literal 12288 zcmeI1Nsk*v6vv-uUp!mFIw6oD$%IRzs$Q!j4tP8r$BgZE+HJy|Lazcs*c9M|IB-E+ z;42`6gv0^900%w*5)u+8?r`CjBT{%(Z6`g8TSE<8P_^af?$_1*^ZVDUSFSdE001?7 z^KDkxIbq9Ye7@|%{rjWskbB}`AJ5z^&aRIe)e*ihKA7-%;W+<~-`@VR@IScM=xbj2 z1N~D3;0*sf?ppK-=E92;&MLQ3Kq;UUPzopolmbctrGQdEDWDWk3Md8sKML5jVH@7Z zc*g7d=U@wut{jPQ{)k67X6Eq9^R-_}XJ5trS?IwK-~0vhv#<@97~vZw8X+ms^3-uO zBTE?`k_cZhbqT@c`ubph(DZw)j^FiyM(7P-8ft@wHy~-{4X|+l3uPcDOa?B)A_Bw4 zPDhHgSSDqaq&h5#&^p6zPbR3P5=z%kfEqNfd)xiTD1)n) zaE4onTZDPU?Ron$oRu=?B%QVE^}XJ%3~E)N5<(43dy%n@mZmZ8v4oR(%A1s$nDRwl zG&=3ZKq>{-N>Q2BgJTI6P`#Ji-c6a9)=MDEuI#2_RAK%#_hd*LWl~&8D)R4|A9(Fn zPckpglyF4UC#q2^ceE&W_~EENS=d=?u!0I=y$HRoCztJKkI)P)({V&I$KYeFR1J&% zy4IGfO^*oB!5mD8ZfPbXe3XrHP{*)VU>U;-gLbRs1u{MMs9@!cW}_0H8JcZVU9%#W zr;3{ykr7*Xwj^PD5Vo5#w8sudmNU)beHCYs!6U36RSu!P1Mjr#jUVE7P^iam`VenMUSN2CGo#quIML^m> zvjT;q7Kd(z)wKe37B(8qra$b3{lMoFi5&5wASMQjkXRiYrumJbA4-BQ2@tdFG$DC) zXjs{CzHfOwxsWakQqD4pl>!sHLPYGZk%)4rZGnoToFIxiNO07f69hYcRF@ zpDM6&3tk7P--Fv|KZ7^WZgJ1@ckmwCUG87{4PHZgSJ*nYi(m0Ji&wc__zCWyP5J)( zJ$MK0r|>4)O?V4n?t6aExgEYg`z!a)-r+50?sLz~7w|UPZQf@32kxH^IC1KCVL#@q zsde6__BHp^u5t@M^Y(BH-bMQYTr33o==sn8Ifb4RP^{xJ-NsqU ztPbu}g%65VoNW*tLDiw1uJA#zj7v;CWyHeuVugsOEPPO`<4iNl7_l)IDp0EM9U55b zP${4kPzopolmbctrGQdEDWDWk3Y<`ZsaN=Of!d#9{r?GH`PVkN2fpD?C~*Cc&lLFf I;l}0sZxC;E$p8QV literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c71.dat b/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c71.dat new file mode 100644 index 0000000000000000000000000000000000000000..9df02c154c2037e75cfc6f79d2b8955e494eb8af GIT binary patch literal 8192 zcmeHLId2m|6#mu|Y$x%V5E71XAEL0d#)R17+^i?g5_{L|5fmyCOlWA30Eq@sKuH6l z0f`O?@e`={4G2*{Lk9&t1qHkrJdqUw(v+YXYv0bk+3y|S%o}SKw*gpmiI$QwE#;t4 zOVeqY2+qdS)im|vdB3-|F!MgZ1nz;Wg6;HA&( zy-h}p$}nIUFbo(53GHFkl!k3>XFs1OFET51-w!aEo$M=lgkxqxO;CvQ*<6 z2hth(Wbgpl^$!7?_SRAAoNu9Oz3*#p^zV%BDGDTkk4t^sWvK($C+cJv#!!luBRB9{ z?V!U$C*~0j<6zyEtyi(_o?Th%&CXV8S9^7Ov{&f2T5Z@i7_1Dk45Jt(8?iIj)&plT z%#g!~44|EKd@a|*7*XiRUEm!@3q68SMqf+{zmkvQ(DD3O%fcvf48zEfg+;!s1Y@GlK2dq2?|OH0N#yb}|%@6AOo5NVxCn)yz)pQogn0 z-i2v}O(M-jGmYJHi@DhDcAYR5Gj7k)_G_=&6}x((Ua9pOvz6Z3%5gd4)kf{=iPfsy zn0I53g2qm?r~}=Dy$ae5gRTyAFZRi;X(4DgJ-@}z&uO4jIqYW`N7-@RAn{{zE~-@1 zNFE0y-xrb~*2NZZP}Uf2OfBwfIxgan%)KAICc1>fGVCC1@=z07roVF23GH zF!1j&kbZ!ZK>Cf8=Y>o?$0^bjgk8WXnQsd4zLx+`fi0)E|dS za!H`JycN>=EUd9f%#nO5G($_mPHMk+-+CeRc!?(Uj|$DuJK-z!LB4ZYXfk&NDmx=& a=C#nLze{}soHXA=pT@3}q&EF3IsOwuqSA!` literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c720.dat b/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c720.dat new file mode 100644 index 0000000000000000000000000000000000000000..c3794777d9fb79e0b198377eb57e074a49c26a4c GIT binary patch literal 200704 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
  1. TSIA:" + getTSIA() + "
  2. " + "
  3. openTSIA:" + getOpenTSIA() + "
  4. " + + "
  5. volume:" + getVolume() + "
  6. "; + if ((getTopGainers() == null) || (getTopLosers() == null)) { + return ret; + } + ret += "
    Current Top Gainers:"; + Iterator it = getTopGainers().iterator(); + + while (it.hasNext()) { + QuoteDataBean quoteData = it.next(); + ret += ("
  7. " + quoteData.toString() + "
  8. "); + } + ret += "
    Current Top Losers:"; + it = getTopLosers().iterator(); + while (it.hasNext()) { + QuoteDataBean quoteData = it.next(); + ret += ("
  9. " + quoteData.toString() + "
  10. "); + } + return ret; + } + + public JsonObject toJSON() { + + JsonObjectBuilder jObjectBuilder = Json.createObjectBuilder(); + + int i = 1; + for (Iterator iterator = topGainers.iterator(); iterator.hasNext();) { + QuoteDataBean quote = iterator.next(); + + jObjectBuilder.add("gainer" + i + "_stock",quote.getSymbol()); + jObjectBuilder.add("gainer" + i + "_price","$" + quote.getPrice()); + jObjectBuilder.add("gainer" + i + "_change",quote.getChange()); + i++; + } + + i = 1; + for (Iterator iterator = topLosers.iterator(); iterator.hasNext();) { + QuoteDataBean quote = iterator.next(); + + jObjectBuilder.add("loser" + i + "_stock",quote.getSymbol()); + jObjectBuilder.add("loser" + i + "_price","$" + quote.getPrice()); + jObjectBuilder.add("loser" + i + "_change",quote.getChange()); + i++; + } + + jObjectBuilder.add("tsia", TSIA); + jObjectBuilder.add("volume",volume); + jObjectBuilder.add("date", summaryDate.toString()); + + return jObjectBuilder.build(); + + } + + public void print() { + Log.log(this.toString()); + } + + public BigDecimal getGainPercent() { + if (gainPercent == null) { + gainPercent = FinancialUtils.computeGainPercent(getTSIA(), getOpenTSIA()); + } + return gainPercent; + } + + /** + * Gets the tSIA + * + * @return Returns a BigDecimal + */ + public BigDecimal getTSIA() { + return TSIA; + } + + /** + * Sets the tSIA + * + * @param tSIA + * The tSIA to set + */ + public void setTSIA(BigDecimal tSIA) { + TSIA = tSIA; + } + + /** + * Gets the openTSIA + * + * @return Returns a BigDecimal + */ + public BigDecimal getOpenTSIA() { + return openTSIA; + } + + /** + * Sets the openTSIA + * + * @param openTSIA + * The openTSIA to set + */ + public void setOpenTSIA(BigDecimal openTSIA) { + this.openTSIA = openTSIA; + } + + /** + * Gets the volume + * + * @return Returns a BigDecimal + */ + public double getVolume() { + return volume; + } + + /** + * Sets the volume + * + * @param volume + * The volume to set + */ + public void setVolume(double volume) { + this.volume = volume; + } + + /** + * Gets the topGainers + * + * @return Returns a Collection + */ + public Collection getTopGainers() { + return topGainers; + } + + /** + * Sets the topGainers + * + * @param topGainers + * The topGainers to set + */ + public void setTopGainers(Collection topGainers) { + this.topGainers = topGainers; + } + + /** + * Gets the topLosers + * + * @return Returns a Collection + */ + public Collection getTopLosers() { + return topLosers; + } + + /** + * Sets the topLosers + * + * @param topLosers + * The topLosers to set + */ + public void setTopLosers(Collection topLosers) { + this.topLosers = topLosers; + } + + /** + * Gets the summaryDate + * + * @return Returns a Date + */ + public Date getSummaryDate() { + return summaryDate; + } + + /** + * Sets the summaryDate + * + * @param summaryDate + * The summaryDate to set + */ + public void setSummaryDate(Date summaryDate) { + this.summaryDate = summaryDate; + } + +} \ No newline at end of file diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/beans/RunStatsDataBean.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/beans/RunStatsDataBean.java new file mode 100644 index 00000000..1016b6cf --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/beans/RunStatsDataBean.java @@ -0,0 +1,294 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.beans; + +import java.io.Serializable; + +public class RunStatsDataBean implements Serializable { + private static final long serialVersionUID = 4017778674103242167L; + + // Constructors + public RunStatsDataBean() { + } + + // count of trade users in the database (users w/ userID like 'uid:%') + private int tradeUserCount; + // count of trade stocks in the database (stocks w/ symbol like 's:%') + private int tradeStockCount; + + // count of new registered users in this run (users w/ userID like 'ru:%') + // -- random user + private int newUserCount; + + // sum of logins by trade users + private int sumLoginCount; + // sum of logouts by trade users + private int sumLogoutCount; + + // count of holdings of trade users + private int holdingCount; + + // count of orders of trade users + private int orderCount; + // count of buy orders of trade users + private int buyOrderCount; + // count of sell orders of trade users + private int sellOrderCount; + // count of cancelled orders of trade users + private int cancelledOrderCount; + // count of open orders of trade users + private int openOrderCount; + // count of orders deleted during this trade Reset + private int deletedOrderCount; + + @Override + public String toString() { + return "\n\tRunStatsData for reset at " + new java.util.Date() + "\n\t\t tradeUserCount: " + getTradeUserCount() + "\n\t\t newUserCount: " + + getNewUserCount() + "\n\t\t sumLoginCount: " + getSumLoginCount() + "\n\t\t sumLogoutCount: " + getSumLogoutCount() + + "\n\t\t holdingCount: " + getHoldingCount() + "\n\t\t orderCount: " + getOrderCount() + "\n\t\t buyOrderCount: " + + getBuyOrderCount() + "\n\t\t sellOrderCount: " + getSellOrderCount() + "\n\t\t cancelledOrderCount: " + getCancelledOrderCount() + + "\n\t\t openOrderCount: " + getOpenOrderCount() + "\n\t\t deletedOrderCount: " + getDeletedOrderCount(); + } + + /** + * Gets the tradeUserCount + * + * @return Returns a int + */ + public int getTradeUserCount() { + return tradeUserCount; + } + + /** + * Sets the tradeUserCount + * + * @param tradeUserCount + * The tradeUserCount to set + */ + public void setTradeUserCount(int tradeUserCount) { + this.tradeUserCount = tradeUserCount; + } + + /** + * Gets the newUserCount + * + * @return Returns a int + */ + public int getNewUserCount() { + return newUserCount; + } + + /** + * Sets the newUserCount + * + * @param newUserCount + * The newUserCount to set + */ + public void setNewUserCount(int newUserCount) { + this.newUserCount = newUserCount; + } + + /** + * Gets the sumLoginCount + * + * @return Returns a int + */ + public int getSumLoginCount() { + return sumLoginCount; + } + + /** + * Sets the sumLoginCount + * + * @param sumLoginCount + * The sumLoginCount to set + */ + public void setSumLoginCount(int sumLoginCount) { + this.sumLoginCount = sumLoginCount; + } + + /** + * Gets the sumLogoutCount + * + * @return Returns a int + */ + public int getSumLogoutCount() { + return sumLogoutCount; + } + + /** + * Sets the sumLogoutCount + * + * @param sumLogoutCount + * The sumLogoutCount to set + */ + public void setSumLogoutCount(int sumLogoutCount) { + this.sumLogoutCount = sumLogoutCount; + } + + /** + * Gets the holdingCount + * + * @return Returns a int + */ + public int getHoldingCount() { + return holdingCount; + } + + /** + * Sets the holdingCount + * + * @param holdingCount + * The holdingCount to set + */ + public void setHoldingCount(int holdingCount) { + this.holdingCount = holdingCount; + } + + /** + * Gets the buyOrderCount + * + * @return Returns a int + */ + public int getBuyOrderCount() { + return buyOrderCount; + } + + /** + * Sets the buyOrderCount + * + * @param buyOrderCount + * The buyOrderCount to set + */ + public void setBuyOrderCount(int buyOrderCount) { + this.buyOrderCount = buyOrderCount; + } + + /** + * Gets the sellOrderCount + * + * @return Returns a int + */ + public int getSellOrderCount() { + return sellOrderCount; + } + + /** + * Sets the sellOrderCount + * + * @param sellOrderCount + * The sellOrderCount to set + */ + public void setSellOrderCount(int sellOrderCount) { + this.sellOrderCount = sellOrderCount; + } + + /** + * Gets the cancelledOrderCount + * + * @return Returns a int + */ + public int getCancelledOrderCount() { + return cancelledOrderCount; + } + + /** + * Sets the cancelledOrderCount + * + * @param cancelledOrderCount + * The cancelledOrderCount to set + */ + public void setCancelledOrderCount(int cancelledOrderCount) { + this.cancelledOrderCount = cancelledOrderCount; + } + + /** + * Gets the openOrderCount + * + * @return Returns a int + */ + public int getOpenOrderCount() { + return openOrderCount; + } + + /** + * Sets the openOrderCount + * + * @param openOrderCount + * The openOrderCount to set + */ + public void setOpenOrderCount(int openOrderCount) { + this.openOrderCount = openOrderCount; + } + + /** + * Gets the deletedOrderCount + * + * @return Returns a int + */ + public int getDeletedOrderCount() { + return deletedOrderCount; + } + + /** + * Sets the deletedOrderCount + * + * @param deletedOrderCount + * The deletedOrderCount to set + */ + public void setDeletedOrderCount(int deletedOrderCount) { + this.deletedOrderCount = deletedOrderCount; + } + + /** + * Gets the orderCount + * + * @return Returns a int + */ + public int getOrderCount() { + return orderCount; + } + + /** + * Sets the orderCount + * + * @param orderCount + * The orderCount to set + */ + public void setOrderCount(int orderCount) { + this.orderCount = orderCount; + } + + /** + * Gets the tradeStockCount + * + * @return Returns a int + */ + public int getTradeStockCount() { + return tradeStockCount; + } + + /** + * Sets the tradeStockCount + * + * @param tradeStockCount + * The tradeStockCount to set + */ + public void setTradeStockCount(int tradeStockCount) { + this.tradeStockCount = tradeStockCount; + } + +} diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/entities/AccountDataBean.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/entities/AccountDataBean.java new file mode 100644 index 00000000..7248dfe9 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/entities/AccountDataBean.java @@ -0,0 +1,286 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.entities; + +import java.io.Serializable; +import java.math.BigDecimal; +import java.sql.Timestamp; +import java.util.Collection; +import java.util.Date; + +import javax.ejb.EJBException; +import javax.persistence.Column; +import javax.persistence.Entity; +import javax.persistence.FetchType; +import javax.persistence.GeneratedValue; +import javax.persistence.GenerationType; +import javax.persistence.Id; +import javax.persistence.JoinColumn; +import javax.persistence.OneToMany; +import javax.persistence.OneToOne; +import javax.persistence.Table; +import javax.persistence.TableGenerator; +import javax.persistence.Temporal; +import javax.persistence.TemporalType; +import javax.persistence.Transient; +import javax.validation.constraints.NotNull; +import javax.validation.constraints.PastOrPresent; +import javax.validation.constraints.PositiveOrZero; + +import com.ibm.websphere.samples.daytrader.util.Log; +import com.ibm.websphere.samples.daytrader.util.TradeConfig; + +@Entity(name = "accountejb") +@Table(name = "accountejb") +public class AccountDataBean implements Serializable { + + private static final long serialVersionUID = 8437841265136840545L; + + /* Accessor methods for persistent fields */ + @TableGenerator(name = "accountIdGen", table = "KEYGENEJB", pkColumnName = "KEYNAME", valueColumnName = "KEYVAL", pkColumnValue = "account", allocationSize = 1000) + @Id + @GeneratedValue(strategy = GenerationType.TABLE, generator = "accountIdGen") + @Column(name = "ACCOUNTID", nullable = false) + private Integer accountID; /* accountID */ + + @NotNull + @PositiveOrZero + @Column(name = "LOGINCOUNT", nullable = false) + private int loginCount; /* loginCount */ + + @NotNull + @PositiveOrZero + @Column(name = "LOGOUTCOUNT", nullable = false) + private int logoutCount; /* logoutCount */ + + @Column(name = "LASTLOGIN") + @Temporal(TemporalType.TIMESTAMP) + @PastOrPresent + private Date lastLogin; /* lastLogin Date */ + + @Column(name = "CREATIONDATE") + @Temporal(TemporalType.TIMESTAMP) + @PastOrPresent + private Date creationDate; /* creationDate */ + + @Column(name = "BALANCE") + private BigDecimal balance; /* balance */ + + @Column(name = "OPENBALANCE") + private BigDecimal openBalance; /* open balance */ + + @OneToMany(mappedBy = "account", fetch = FetchType.LAZY) + private Collection orders; + + @OneToMany(mappedBy = "account", fetch = FetchType.LAZY) + private Collection holdings; + + @OneToOne(fetch = FetchType.LAZY) + @JoinColumn(name = "PROFILE_USERID") + private AccountProfileDataBean profile; + + /* + * Accessor methods for relationship fields are only included for the + * AccountProfile profileID + */ + @Transient + private String profileID; + + public AccountDataBean() { + } + + public AccountDataBean(Integer accountID, int loginCount, int logoutCount, Date lastLogin, Date creationDate, BigDecimal balance, BigDecimal openBalance, + String profileID) { + setAccountID(accountID); + setLoginCount(loginCount); + setLogoutCount(logoutCount); + setLastLogin(lastLogin); + setCreationDate(creationDate); + setBalance(balance); + setOpenBalance(openBalance); + setProfileID(profileID); + } + + public AccountDataBean(int loginCount, int logoutCount, Date lastLogin, Date creationDate, BigDecimal balance, BigDecimal openBalance, String profileID) { + setLoginCount(loginCount); + setLogoutCount(logoutCount); + setLastLogin(lastLogin); + setCreationDate(creationDate); + setBalance(balance); + setOpenBalance(openBalance); + setProfileID(profileID); + } + + public static AccountDataBean getRandomInstance() { + return new AccountDataBean(new Integer(TradeConfig.rndInt(100000)), // accountID + TradeConfig.rndInt(10000), // loginCount + TradeConfig.rndInt(10000), // logoutCount + new java.util.Date(), // lastLogin + new java.util.Date(TradeConfig.rndInt(Integer.MAX_VALUE)), // creationDate + TradeConfig.rndBigDecimal(1000000.0f), // balance + TradeConfig.rndBigDecimal(1000000.0f), // openBalance + TradeConfig.rndUserID() // profileID + ); + } + + @Override + public String toString() { + return "\n\tAccount Data for account: " + getAccountID() + "\n\t\t loginCount:" + getLoginCount() + "\n\t\t logoutCount:" + getLogoutCount() + + "\n\t\t lastLogin:" + getLastLogin() + "\n\t\t creationDate:" + getCreationDate() + "\n\t\t balance:" + getBalance() + + "\n\t\t openBalance:" + getOpenBalance() + "\n\t\t profileID:" + getProfileID(); + } + + public String toHTML() { + return "
    Account Data for account: " + getAccountID() + "" + "
  11. loginCount:" + getLoginCount() + "
  12. " + "
  13. logoutCount:" + + getLogoutCount() + "
  14. " + "
  15. lastLogin:" + getLastLogin() + "
  16. " + "
  17. creationDate:" + getCreationDate() + "
  18. " + + "
  19. balance:" + getBalance() + "
  20. " + "
  21. openBalance:" + getOpenBalance() + "
  22. " + "
  23. profileID:" + getProfileID() + + "
  24. "; + } + + public void print() { + Log.log(this.toString()); + } + + public Integer getAccountID() { + return accountID; + } + + public void setAccountID(Integer accountID) { + this.accountID = accountID; + } + + public int getLoginCount() { + return loginCount; + } + + public void setLoginCount(int loginCount) { + this.loginCount = loginCount; + } + + public int getLogoutCount() { + return logoutCount; + } + + public void setLogoutCount(int logoutCount) { + this.logoutCount = logoutCount; + } + + public Date getLastLogin() { + return lastLogin; + } + + public void setLastLogin(Date lastLogin) { + this.lastLogin = lastLogin; + } + + public Date getCreationDate() { + return creationDate; + } + + public void setCreationDate(Date creationDate) { + this.creationDate = creationDate; + } + + public BigDecimal getBalance() { + return balance; + } + + public void setBalance(BigDecimal balance) { + this.balance = balance; + } + + public BigDecimal getOpenBalance() { + return openBalance; + } + + public void setOpenBalance(BigDecimal openBalance) { + this.openBalance = openBalance; + } + + public String getProfileID() { + return profileID; + } + + public void setProfileID(String profileID) { + this.profileID = profileID; + } + + /* + * Disabled for D185273 public String getUserID() { return getProfileID(); } + */ + + public Collection getOrders() { + return orders; + } + + public void setOrders(Collection orders) { + this.orders = orders; + } + + public Collection getHoldings() { + return holdings; + } + + public void setHoldings(Collection holdings) { + this.holdings = holdings; + } + + public AccountProfileDataBean getProfile() { + return profile; + } + + public void setProfile(AccountProfileDataBean profile) { + this.profile = profile; + } + + public void login(String password) { + AccountProfileDataBean profile = getProfile(); + if ((profile == null) || (profile.getPassword().equals(password) == false)) { + String error = "AccountBean:Login failure for account: " + getAccountID() + + ((profile == null) ? "null AccountProfile" : "\n\tIncorrect password-->" + profile.getUserID() + ":" + profile.getPassword()); + throw new EJBException(error); + } + + setLastLogin(new Timestamp(System.currentTimeMillis())); + setLoginCount(getLoginCount() + 1); + } + + public void logout() { + setLogoutCount(getLogoutCount() + 1); + } + + @Override + public int hashCode() { + int hash = 0; + hash += (this.accountID != null ? this.accountID.hashCode() : 0); + return hash; + } + + @Override + public boolean equals(Object object) { + + if (!(object instanceof AccountDataBean)) { + return false; + } + AccountDataBean other = (AccountDataBean) object; + + if (this.accountID != other.accountID && (this.accountID == null || !this.accountID.equals(other.accountID))) { + return false; + } + + return true; + } +} \ No newline at end of file diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/entities/AccountProfileDataBean.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/entities/AccountProfileDataBean.java new file mode 100644 index 00000000..24e8ad81 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/entities/AccountProfileDataBean.java @@ -0,0 +1,184 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.entities; + +//import java.sql.Timestamp; + +import javax.persistence.Column; +import javax.persistence.Entity; +import javax.persistence.FetchType; +import javax.persistence.Id; +import javax.persistence.OneToOne; +import javax.persistence.Table; +import javax.validation.constraints.Email; +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; + +import com.ibm.websphere.samples.daytrader.util.Log; +import com.ibm.websphere.samples.daytrader.util.TradeConfig; + +@Entity(name = "accountprofileejb") +@Table(name = "accountprofileejb") +public class AccountProfileDataBean implements java.io.Serializable { + + /* Accessor methods for persistent fields */ + + private static final long serialVersionUID = 2794584136675420624L; + + @Id + @NotNull + @Column(name = "USERID", nullable = false) + private String userID; /* userID */ + + @Column(name = "PASSWD") + @NotBlank + private String passwd; /* password */ + + @Column(name = "FULLNAME") + @NotBlank + private String fullName; /* fullName */ + + @Column(name = "ADDRESS") + @NotBlank + private String address; /* address */ + + @Column(name = "EMAIL") + @Email(message = "Email should be valid") + private String email; /* email */ + + @Column(name = "CREDITCARD") + @NotBlank + private String creditCard; /* creditCard */ + + @OneToOne(mappedBy = "profile", fetch = FetchType.LAZY) + private AccountDataBean account; + + public AccountProfileDataBean() { + } + + public AccountProfileDataBean(String userID, String password, String fullName, String address, String email, String creditCard) { + setUserID(userID); + setPassword(password); + setFullName(fullName); + setAddress(address); + setEmail(email); + setCreditCard(creditCard); + } + + public static AccountProfileDataBean getRandomInstance() { + return new AccountProfileDataBean(TradeConfig.rndUserID(), // userID + TradeConfig.rndUserID(), // passwd + TradeConfig.rndFullName(), // fullname + TradeConfig.rndAddress(), // address + TradeConfig.rndEmail(TradeConfig.rndUserID()), // email + TradeConfig.rndCreditCard() // creditCard + ); + } + + @Override + public String toString() { + return "\n\tAccount Profile Data for userID:" + getUserID() + "\n\t\t passwd:" + getPassword() + "\n\t\t fullName:" + getFullName() + + "\n\t\t address:" + getAddress() + "\n\t\t email:" + getEmail() + "\n\t\t creditCard:" + getCreditCard(); + } + + public String toHTML() { + return "
    Account Profile Data for userID: " + getUserID() + "" + "
  25. passwd:" + getPassword() + "
  26. " + "
  27. fullName:" + + getFullName() + "
  28. " + "
  29. address:" + getAddress() + "
  30. " + "
  31. email:" + getEmail() + "
  32. " + "
  33. creditCard:" + + getCreditCard() + "
  34. "; + } + + public void print() { + Log.log(this.toString()); + } + + public String getUserID() { + return userID; + } + + public void setUserID(String userID) { + this.userID = userID; + } + + public String getPassword() { + return passwd; + } + + public void setPassword(String password) { + this.passwd = password; + } + + public String getFullName() { + return fullName; + } + + public void setFullName(String fullName) { + this.fullName = fullName; + } + + public String getAddress() { + return address; + } + + public void setAddress(String address) { + this.address = address; + } + + public String getEmail() { + return email; + } + + public void setEmail(String email) { + this.email = email; + } + + public String getCreditCard() { + return creditCard; + } + + public void setCreditCard(String creditCard) { + this.creditCard = creditCard; + } + + public AccountDataBean getAccount() { + return account; + } + + public void setAccount(AccountDataBean account) { + this.account = account; + } + + @Override + public int hashCode() { + int hash = 0; + hash += (this.userID != null ? this.userID.hashCode() : 0); + return hash; + } + + @Override + public boolean equals(Object object) { + + if (!(object instanceof AccountProfileDataBean)) { + return false; + } + AccountProfileDataBean other = (AccountProfileDataBean) object; + + if (this.userID != other.userID && (this.userID == null || !this.userID.equals(other.userID))) { + return false; + } + + return true; + } +} diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/entities/HoldingDataBean.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/entities/HoldingDataBean.java new file mode 100644 index 00000000..2974ddc2 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/entities/HoldingDataBean.java @@ -0,0 +1,204 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.entities; + +import java.io.Serializable; +import java.math.BigDecimal; +import java.util.Date; + +import javax.persistence.Column; +import javax.persistence.Entity; +import javax.persistence.FetchType; +import javax.persistence.GeneratedValue; +import javax.persistence.GenerationType; +import javax.persistence.Id; +import javax.persistence.JoinColumn; +import javax.persistence.ManyToOne; +import javax.persistence.Table; +import javax.persistence.TableGenerator; +import javax.persistence.Temporal; +import javax.persistence.TemporalType; +import javax.persistence.Transient; +import javax.validation.constraints.NotNull; +import javax.validation.constraints.PastOrPresent; +import javax.validation.constraints.Positive; + +import com.ibm.websphere.samples.daytrader.util.Log; +import com.ibm.websphere.samples.daytrader.util.TradeConfig; + +@Entity(name = "holdingejb") +@Table(name = "holdingejb") +public class HoldingDataBean implements Serializable { + + /* persistent/relationship fields */ + + private static final long serialVersionUID = -2338411656251935480L; + + @Id + @TableGenerator(name = "holdingIdGen", table = "KEYGENEJB", pkColumnName = "KEYNAME", valueColumnName = "KEYVAL", pkColumnValue = "holding", allocationSize = 1000) + @GeneratedValue(strategy = GenerationType.TABLE, generator = "holdingIdGen") + @Column(name = "HOLDINGID", nullable = false) + private Integer holdingID; /* holdingID */ + + @NotNull + @Positive + @Column(name = "QUANTITY", nullable = false) + private double quantity; /* quantity */ + + @Column(name = "PURCHASEPRICE") + @Positive + private BigDecimal purchasePrice; /* purchasePrice */ + + @Column(name = "PURCHASEDATE") + @Temporal(TemporalType.TIMESTAMP) + @PastOrPresent + private Date purchaseDate; /* purchaseDate */ + + @Transient + private String quoteID; /* Holding(*) ---> Quote(1) */ + + @ManyToOne(fetch = FetchType.LAZY) + @JoinColumn(name = "ACCOUNT_ACCOUNTID") + private AccountDataBean account; + + @ManyToOne(fetch = FetchType.EAGER) + @JoinColumn(name = "QUOTE_SYMBOL") + private QuoteDataBean quote; + + public HoldingDataBean() { + } + + public HoldingDataBean(Integer holdingID, double quantity, BigDecimal purchasePrice, Date purchaseDate, String quoteID) { + setHoldingID(holdingID); + setQuantity(quantity); + setPurchasePrice(purchasePrice); + setPurchaseDate(purchaseDate); + setQuoteID(quoteID); + } + + public HoldingDataBean(double quantity, BigDecimal purchasePrice, Date purchaseDate, AccountDataBean account, QuoteDataBean quote) { + setQuantity(quantity); + setPurchasePrice(purchasePrice); + setPurchaseDate(purchaseDate); + setAccount(account); + setQuote(quote); + } + + public static HoldingDataBean getRandomInstance() { + return new HoldingDataBean(new Integer(TradeConfig.rndInt(100000)), // holdingID + TradeConfig.rndQuantity(), // quantity + TradeConfig.rndBigDecimal(1000.0f), // purchasePrice + new java.util.Date(TradeConfig.rndInt(Integer.MAX_VALUE)), // purchaseDate + TradeConfig.rndSymbol() // symbol + ); + } + + @Override + public String toString() { + return "\n\tHolding Data for holding: " + getHoldingID() + "\n\t\t quantity:" + getQuantity() + "\n\t\t purchasePrice:" + getPurchasePrice() + + "\n\t\t purchaseDate:" + getPurchaseDate() + "\n\t\t quoteID:" + getQuoteID(); + } + + public String toHTML() { + return "
    Holding Data for holding: " + getHoldingID() + "
    " + "
  35. quantity:" + getQuantity() + "
  36. " + "
  37. purchasePrice:" + + getPurchasePrice() + "
  38. " + "
  39. purchaseDate:" + getPurchaseDate() + "
  40. " + "
  41. quoteID:" + getQuoteID() + "
  42. "; + } + + public void print() { + Log.log(this.toString()); + } + + public Integer getHoldingID() { + return holdingID; + } + + public void setHoldingID(Integer holdingID) { + this.holdingID = holdingID; + } + + public double getQuantity() { + return quantity; + } + + public void setQuantity(double quantity) { + this.quantity = quantity; + } + + public BigDecimal getPurchasePrice() { + return purchasePrice; + } + + public void setPurchasePrice(BigDecimal purchasePrice) { + this.purchasePrice = purchasePrice; + } + + public Date getPurchaseDate() { + return purchaseDate; + } + + public void setPurchaseDate(Date purchaseDate) { + this.purchaseDate = purchaseDate; + } + + public String getQuoteID() { + if (quote != null) { + return quote.getSymbol(); + } + return quoteID; + } + + public void setQuoteID(String quoteID) { + this.quoteID = quoteID; + } + + public AccountDataBean getAccount() { + return account; + } + + public void setAccount(AccountDataBean account) { + this.account = account; + } + + public QuoteDataBean getQuote() { + return quote; + } + + public void setQuote(QuoteDataBean quote) { + this.quote = quote; + } + + @Override + public int hashCode() { + int hash = 0; + hash += (this.holdingID != null ? this.holdingID.hashCode() : 0); + return hash; + } + + @Override + public boolean equals(Object object) { + + if (!(object instanceof HoldingDataBean)) { + return false; + } + HoldingDataBean other = (HoldingDataBean) object; + + if (this.holdingID != other.holdingID && (this.holdingID == null || !this.holdingID.equals(other.holdingID))) { + return false; + } + + return true; + } +} diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/entities/OrderDataBean.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/entities/OrderDataBean.java new file mode 100644 index 00000000..b62b4993 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/entities/OrderDataBean.java @@ -0,0 +1,339 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.entities; + +import java.io.Serializable; +import java.math.BigDecimal; +//import java.sql.Timestamp; +import java.util.Date; + +import javax.persistence.Column; +import javax.persistence.Entity; +import javax.persistence.FetchType; +import javax.persistence.GeneratedValue; +import javax.persistence.GenerationType; +import javax.persistence.Id; +import javax.persistence.JoinColumn; +import javax.persistence.ManyToOne; +import javax.persistence.NamedQueries; +import javax.persistence.NamedQuery; +import javax.persistence.OneToOne; +import javax.persistence.Table; +import javax.persistence.TableGenerator; +import javax.persistence.Temporal; +import javax.persistence.TemporalType; +import javax.persistence.Transient; +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import javax.validation.constraints.PastOrPresent; +import javax.validation.constraints.Positive; + +import com.ibm.websphere.samples.daytrader.util.Log; +import com.ibm.websphere.samples.daytrader.util.TradeConfig; + +@Entity(name = "orderejb") +@Table(name = "orderejb") +@NamedQueries({ + @NamedQuery(name = "orderejb.findByOrderfee", query = "SELECT o FROM orderejb o WHERE o.orderFee = :orderfee"), + @NamedQuery(name = "orderejb.findByCompletiondate", query = "SELECT o FROM orderejb o WHERE o.completionDate = :completiondate"), + @NamedQuery(name = "orderejb.findByOrdertype", query = "SELECT o FROM orderejb o WHERE o.orderType = :ordertype"), + @NamedQuery(name = "orderejb.findByOrderstatus", query = "SELECT o FROM orderejb o WHERE o.orderStatus = :orderstatus"), + @NamedQuery(name = "orderejb.findByPrice", query = "SELECT o FROM orderejb o WHERE o.price = :price"), + @NamedQuery(name = "orderejb.findByQuantity", query = "SELECT o FROM orderejb o WHERE o.quantity = :quantity"), + @NamedQuery(name = "orderejb.findByOpendate", query = "SELECT o FROM orderejb o WHERE o.openDate = :opendate"), + @NamedQuery(name = "orderejb.findByOrderid", query = "SELECT o FROM orderejb o WHERE o.orderID = :orderid"), + @NamedQuery(name = "orderejb.findByAccountAccountid", query = "SELECT o FROM orderejb o WHERE o.account.accountID = :accountAccountid"), + @NamedQuery(name = "orderejb.findByQuoteSymbol", query = "SELECT o FROM orderejb o WHERE o.quote.symbol = :quoteSymbol"), + @NamedQuery(name = "orderejb.findByHoldingHoldingid", query = "SELECT o FROM orderejb o WHERE o.holding.holdingID = :holdingHoldingid"), + @NamedQuery(name = "orderejb.closedOrders", query = "SELECT o FROM orderejb o WHERE o.orderStatus = 'closed' AND o.account.profile.userID = :userID"), + @NamedQuery(name = "orderejb.completeClosedOrders", query = "UPDATE orderejb o SET o.orderStatus = 'completed' WHERE o.orderStatus = 'closed' AND o.account.profile.userID = :userID") }) +public class OrderDataBean implements Serializable { + + private static final long serialVersionUID = 120650490200739057L; + + @Id + @TableGenerator(name = "orderIdGen", table = "KEYGENEJB", pkColumnName = "KEYNAME", valueColumnName = "KEYVAL", pkColumnValue = "order", allocationSize = 1000) + @GeneratedValue(strategy = GenerationType.TABLE, generator = "orderIdGen") + @Column(name = "ORDERID", nullable = false) + private Integer orderID; /* orderID */ + + @Column(name = "ORDERTYPE") + @NotBlank + private String orderType; /* orderType (buy, sell, etc.) */ + + @Column(name = "ORDERSTATUS") + @NotBlank + private String orderStatus; /* + * orderStatus (open, processing, completed, + * closed, cancelled) + */ + + @Column(name = "OPENDATE") + @Temporal(TemporalType.TIMESTAMP) + @PastOrPresent + private Date openDate; /* openDate (when the order was entered) */ + + @Column(name = "COMPLETIONDATE") + @PastOrPresent + @Temporal(TemporalType.TIMESTAMP) + private Date completionDate; /* completionDate */ + + @NotNull + @Column(name = "QUANTITY", nullable = false) + private double quantity; /* quantity */ + + @Column(name = "PRICE") + @Positive + private BigDecimal price; /* price */ + + @Column(name = "ORDERFEE") + @Positive + private BigDecimal orderFee; /* price */ + + @ManyToOne(fetch = FetchType.LAZY) + @JoinColumn(name = "ACCOUNT_ACCOUNTID") + private AccountDataBean account; + + @ManyToOne(fetch = FetchType.EAGER) + @JoinColumn(name = "QUOTE_SYMBOL") + private QuoteDataBean quote; + + @OneToOne(fetch = FetchType.LAZY) + @JoinColumn(name = "HOLDING_HOLDINGID") + private HoldingDataBean holding; + + /* Fields for relationship fields are not kept in the Data Bean */ + @Transient + private String symbol; + + public OrderDataBean() { + } + + public OrderDataBean(Integer orderID, String orderType, String orderStatus, Date openDate, Date completionDate, double quantity, BigDecimal price, + BigDecimal orderFee, String symbol) { + setOrderID(orderID); + setOrderType(orderType); + setOrderStatus(orderStatus); + setOpenDate(openDate); + setCompletionDate(completionDate); + setQuantity(quantity); + setPrice(price); + setOrderFee(orderFee); + setSymbol(symbol); + } + + public OrderDataBean(String orderType, String orderStatus, Date openDate, Date completionDate, double quantity, BigDecimal price, BigDecimal orderFee, + AccountDataBean account, QuoteDataBean quote, HoldingDataBean holding) { + setOrderType(orderType); + setOrderStatus(orderStatus); + setOpenDate(openDate); + setCompletionDate(completionDate); + setQuantity(quantity); + setPrice(price); + setOrderFee(orderFee); + setAccount(account); + setQuote(quote); + setHolding(holding); + } + + public static OrderDataBean getRandomInstance() { + return new OrderDataBean(new Integer(TradeConfig.rndInt(100000)), TradeConfig.rndBoolean() ? "buy" : "sell", "open", new java.util.Date( + TradeConfig.rndInt(Integer.MAX_VALUE)), new java.util.Date(TradeConfig.rndInt(Integer.MAX_VALUE)), TradeConfig.rndQuantity(), + TradeConfig.rndBigDecimal(1000.0f), TradeConfig.rndBigDecimal(1000.0f), TradeConfig.rndSymbol()); + } + + @Override + public String toString() { + return "Order " + getOrderID() + "\n\t orderType: " + getOrderType() + "\n\t orderStatus: " + getOrderStatus() + "\n\t openDate: " + + getOpenDate() + "\n\t completionDate: " + getCompletionDate() + "\n\t quantity: " + getQuantity() + "\n\t price: " + + getPrice() + "\n\t orderFee: " + getOrderFee() + "\n\t symbol: " + getSymbol(); + } + + public String toHTML() { + return "
    Order " + getOrderID() + "" + "
  43. orderType: " + getOrderType() + "
  44. " + "
  45. orderStatus: " + getOrderStatus() + + "
  46. " + "
  47. openDate: " + getOpenDate() + "
  48. " + "
  49. completionDate: " + getCompletionDate() + "
  50. " + + "
  51. quantity: " + getQuantity() + "
  52. " + "
  53. price: " + getPrice() + "
  54. " + "
  55. orderFee: " + getOrderFee() + + "
  56. " + "
  57. symbol: " + getSymbol() + "
  58. "; + } + + public void print() { + Log.log(this.toString()); + } + + public Integer getOrderID() { + return orderID; + } + + public void setOrderID(Integer orderID) { + this.orderID = orderID; + } + + public String getOrderType() { + return orderType; + } + + public void setOrderType(String orderType) { + this.orderType = orderType; + } + + public String getOrderStatus() { + return orderStatus; + } + + public void setOrderStatus(String orderStatus) { + this.orderStatus = orderStatus; + } + + public Date getOpenDate() { + return openDate; + } + + public void setOpenDate(Date openDate) { + this.openDate = openDate; + } + + public Date getCompletionDate() { + return completionDate; + } + + public void setCompletionDate(Date completionDate) { + this.completionDate = completionDate; + } + + public double getQuantity() { + return quantity; + } + + public void setQuantity(double quantity) { + this.quantity = quantity; + } + + public BigDecimal getPrice() { + return price; + } + + public void setPrice(BigDecimal price) { + this.price = price; + } + + public BigDecimal getOrderFee() { + return orderFee; + } + + public void setOrderFee(BigDecimal orderFee) { + this.orderFee = orderFee; + } + + public String getSymbol() { + if (quote != null) { + return quote.getSymbol(); + } + return symbol; + } + + public void setSymbol(String symbol) { + this.symbol = symbol; + } + + public AccountDataBean getAccount() { + return account; + } + + public void setAccount(AccountDataBean account) { + this.account = account; + } + + public QuoteDataBean getQuote() { + return quote; + } + + public void setQuote(QuoteDataBean quote) { + this.quote = quote; + } + + public HoldingDataBean getHolding() { + return holding; + } + + public void setHolding(HoldingDataBean holding) { + this.holding = holding; + } + + public boolean isBuy() { + String orderType = getOrderType(); + if (orderType.compareToIgnoreCase("buy") == 0) { + return true; + } + return false; + } + + public boolean isSell() { + String orderType = getOrderType(); + if (orderType.compareToIgnoreCase("sell") == 0) { + return true; + } + return false; + } + + public boolean isOpen() { + String orderStatus = getOrderStatus(); + if ((orderStatus.compareToIgnoreCase("open") == 0) || (orderStatus.compareToIgnoreCase("processing") == 0)) { + return true; + } + return false; + } + + public boolean isCompleted() { + String orderStatus = getOrderStatus(); + if ((orderStatus.compareToIgnoreCase("completed") == 0) || (orderStatus.compareToIgnoreCase("alertcompleted") == 0) + || (orderStatus.compareToIgnoreCase("cancelled") == 0)) { + return true; + } + return false; + } + + public boolean isCancelled() { + String orderStatus = getOrderStatus(); + if (orderStatus.compareToIgnoreCase("cancelled") == 0) { + return true; + } + return false; + } + + public void cancel() { + setOrderStatus("cancelled"); + } + + @Override + public int hashCode() { + int hash = 0; + hash += (this.orderID != null ? this.orderID.hashCode() : 0); + return hash; + } + + @Override + public boolean equals(Object object) { + + if (!(object instanceof OrderDataBean)) { + return false; + } + OrderDataBean other = (OrderDataBean) object; + if (this.orderID != other.orderID && (this.orderID == null || !this.orderID.equals(other.orderID))) { + return false; + } + return true; + } +} diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/entities/QuoteDataBean.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/entities/QuoteDataBean.java new file mode 100644 index 00000000..188873a0 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/entities/QuoteDataBean.java @@ -0,0 +1,213 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.entities; + +import java.io.Serializable; +import java.math.BigDecimal; + +import javax.persistence.Column; +import javax.persistence.Entity; +import javax.persistence.Id; +import javax.persistence.NamedNativeQueries; +import javax.persistence.NamedNativeQuery; +import javax.persistence.NamedQueries; +import javax.persistence.NamedQuery; +import javax.persistence.Table; +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import javax.validation.constraints.Positive; + +import com.ibm.websphere.samples.daytrader.util.Log; +import com.ibm.websphere.samples.daytrader.util.TradeConfig; + +@Entity(name = "quoteejb") +@Table(name = "quoteejb") +@NamedQueries({ + @NamedQuery(name = "quoteejb.allQuotes", query = "SELECT q FROM quoteejb q")}) +@NamedNativeQueries({ @NamedNativeQuery(name = "quoteejb.quoteForUpdate", query = "select * from quoteejb q where q.symbol=? for update", resultClass = com.ibm.websphere.samples.daytrader.entities.QuoteDataBean.class) }) +public class QuoteDataBean implements Serializable { + + /* Accessor methods for persistent fields */ + + private static final long serialVersionUID = 1847932261895838791L; + + @Id + @NotNull + @Column(name = "SYMBOL", nullable = false) + private String symbol; /* symbol */ + + @Column(name = "COMPANYNAME") + @NotBlank + private String companyName; /* companyName */ + + @NotNull + @Column(name = "VOLUME", nullable = false) + private double volume; /* volume */ + + @Column(name = "PRICE") + @Positive + private BigDecimal price; /* price */ + + @Column(name = "OPEN1") + @Positive + private BigDecimal open1; /* open1 price */ + + @Column(name = "LOW") + @Positive + private BigDecimal low; /* low price */ + + @Column(name = "HIGH") + @Positive + private BigDecimal high; /* high price */ + + @NotNull + @Column(name = "CHANGE1", nullable = false) + private double change1; /* price change */ + + /* Accessor methods for relationship fields are not kept in the DataBean */ + + public QuoteDataBean() { + } + + public QuoteDataBean(String symbol, String companyName, double volume, BigDecimal price, BigDecimal open, BigDecimal low, BigDecimal high, double change) { + setSymbol(symbol); + setCompanyName(companyName); + setVolume(volume); + setPrice(price); + setOpen(open); + setLow(low); + setHigh(high); + setChange(change); + } + + public static QuoteDataBean getRandomInstance() { + return new QuoteDataBean(TradeConfig.rndSymbol(), // symbol + TradeConfig.rndSymbol() + " Incorporated", // Company Name + TradeConfig.rndFloat(100000), // volume + TradeConfig.rndBigDecimal(1000.0f), // price + TradeConfig.rndBigDecimal(1000.0f), // open1 + TradeConfig.rndBigDecimal(1000.0f), // low + TradeConfig.rndBigDecimal(1000.0f), // high + TradeConfig.rndFloat(100000) // volume + ); + } + + // Create a "zero" value quoteDataBean for the given symbol + public QuoteDataBean(String symbol) { + setSymbol(symbol); + } + + @Override + public String toString() { + return "\n\tQuote Data for: " + getSymbol() + "\n\t\t companyName: " + getCompanyName() + "\n\t\t volume: " + getVolume() + "\n\t\t price: " + + getPrice() + "\n\t\t open1: " + getOpen() + "\n\t\t low: " + getLow() + "\n\t\t high: " + getHigh() + + "\n\t\t change1: " + getChange(); + } + + public String toHTML() { + return "
    Quote Data for: " + getSymbol() + "
  59. companyName: " + getCompanyName() + "
  60. " + "
  61. volume: " + getVolume() + "
  62. " + + "
  63. price: " + getPrice() + "
  64. " + "
  65. open1: " + getOpen() + "
  66. " + "
  67. low: " + getLow() + "
  68. " + + "
  69. high: " + getHigh() + "
  70. " + "
  71. change1: " + getChange() + "
  72. "; + } + + public void print() { + Log.log(this.toString()); + } + + public String getSymbol() { + return symbol; + } + + public void setSymbol(String symbol) { + this.symbol = symbol; + } + + public String getCompanyName() { + return companyName; + } + + public void setCompanyName(String companyName) { + this.companyName = companyName; + } + + public BigDecimal getPrice() { + return price; + } + + public void setPrice(BigDecimal price) { + this.price = price; + } + + public BigDecimal getOpen() { + return open1; + } + + public void setOpen(BigDecimal open) { + this.open1 = open; + } + + public BigDecimal getLow() { + return low; + } + + public void setLow(BigDecimal low) { + this.low = low; + } + + public BigDecimal getHigh() { + return high; + } + + public void setHigh(BigDecimal high) { + this.high = high; + } + + public double getChange() { + return change1; + } + + public void setChange(double change) { + this.change1 = change; + } + + public double getVolume() { + return volume; + } + + public void setVolume(double volume) { + this.volume = volume; + } + + @Override + public int hashCode() { + int hash = 0; + hash += (this.symbol != null ? this.symbol.hashCode() : 0); + return hash; + } + + @Override + public boolean equals(Object object) { + + if (!(object instanceof QuoteDataBean)) { + return false; + } + QuoteDataBean other = (QuoteDataBean) object; + if (this.symbol != other.symbol && (this.symbol == null || !this.symbol.equals(other.symbol))) { + return false; + } + return true; + } +} \ No newline at end of file diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/impl/direct/AsyncOrder.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/impl/direct/AsyncOrder.java new file mode 100644 index 00000000..eae3935c --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/impl/direct/AsyncOrder.java @@ -0,0 +1,71 @@ +/** + * (C) Copyright IBM Corporation 2019. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.impl.direct; + +import javax.annotation.Resource; +import javax.enterprise.context.Dependent; +import javax.inject.Inject; +import javax.transaction.UserTransaction; + +import com.ibm.websphere.samples.daytrader.interfaces.TradeJDBC; +import com.ibm.websphere.samples.daytrader.interfaces.TradeServices; + +@Dependent +public class AsyncOrder implements Runnable { + + @Inject + @TradeJDBC + TradeServices tradeService; + + @Resource + UserTransaction ut; + + Integer orderID; + boolean twoPhase; + + public void setProperties(Integer orderID, boolean twoPhase) { + this.orderID = orderID; + this.twoPhase = twoPhase; + } + + @Override + public void run() { + + + try { + ut.begin(); + tradeService.completeOrder(orderID, twoPhase); + ut.commit(); + } catch (Exception e) { + + try { + ut.rollback(); + } catch (Exception e1) { + try { + throw new Exception(e1); + } catch (Exception e2) { + e2.printStackTrace(); + } + } + try { + throw new Exception(e); + } catch (Exception e1) { + // TODO Auto-generated catch block + e1.printStackTrace(); + } + } + } +} diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/impl/direct/AsyncOrderSubmitter.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/impl/direct/AsyncOrderSubmitter.java new file mode 100644 index 00000000..75770d4a --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/impl/direct/AsyncOrderSubmitter.java @@ -0,0 +1,40 @@ +/** + * (C) Copyright IBM Corporation 2019. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.impl.direct; + +import java.util.concurrent.Future; + +import javax.annotation.Resource; +import javax.enterprise.concurrent.ManagedExecutorService; +import javax.enterprise.context.RequestScoped; +import javax.inject.Inject; + +@RequestScoped +public class AsyncOrderSubmitter { + + + @Resource + private ManagedExecutorService mes; + + @Inject + private AsyncOrder asyncOrder; + + + public Future submitOrder(Integer orderID, boolean twoPhase) { + asyncOrder.setProperties(orderID,twoPhase); + return mes.submit(asyncOrder); + } +} diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/impl/direct/KeySequenceDirect.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/impl/direct/KeySequenceDirect.java new file mode 100644 index 00000000..dfd7beba --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/impl/direct/KeySequenceDirect.java @@ -0,0 +1,114 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.impl.direct; + +import java.sql.Connection; +import java.sql.PreparedStatement; +import java.sql.ResultSet; +import java.util.Collection; +import java.util.HashMap; +import java.util.Iterator; + +import com.ibm.websphere.samples.daytrader.util.KeyBlock; +import com.ibm.websphere.samples.daytrader.util.Log; +import com.ibm.websphere.samples.daytrader.util.TradeConfig; + +public class KeySequenceDirect { + + private static HashMap> keyMap = new HashMap>(); + + public static synchronized Integer getNextID(Connection conn, String keyName, boolean inSession, boolean inGlobalTxn) throws Exception { + Integer nextID = null; + // First verify we have allocated a block of keys + // for this key name + // Then verify the allocated block has not been depleted + // allocate a new block if necessary + if (keyMap.containsKey(keyName) == false) { + allocNewBlock(conn, keyName, inSession, inGlobalTxn); + } + Collection block = keyMap.get(keyName); + + Iterator ids = block.iterator(); + if (ids.hasNext() == false) { + ids = allocNewBlock(conn, keyName, inSession, inGlobalTxn).iterator(); + } + // get and return a new unique key + nextID = (Integer) ids.next(); + + + Log.trace("KeySequenceDirect:getNextID inSession(" + inSession + ") - return new PK ID for Entity type: " + keyName + " ID=" + nextID); + + return nextID; + } + + private static Collection allocNewBlock(Connection conn, String keyName, boolean inSession, boolean inGlobalTxn) throws Exception { + try { + + if (inGlobalTxn == false && !inSession) { + conn.commit(); // commit any pending txns + } + + PreparedStatement stmt = conn.prepareStatement(getKeyForUpdateSQL); + stmt.setString(1, keyName); + ResultSet rs = stmt.executeQuery(); + + if (!rs.next()) { + // No keys found for this name - create a new one + PreparedStatement stmt2 = conn.prepareStatement(createKeySQL); + int keyVal = 0; + stmt2.setString(1, keyName); + stmt2.setInt(2, keyVal); + stmt2.executeUpdate(); + stmt2.close(); + stmt.close(); + stmt = conn.prepareStatement(getKeyForUpdateSQL); + stmt.setString(1, keyName); + rs = stmt.executeQuery(); + rs.next(); + } + + int keyVal = rs.getInt("keyval"); + + stmt.close(); + + stmt = conn.prepareStatement(updateKeyValueSQL); + stmt.setInt(1, keyVal + TradeConfig.KEYBLOCKSIZE); + stmt.setString(2, keyName); + stmt.executeUpdate(); + stmt.close(); + + Collection block = new KeyBlock(keyVal, keyVal + TradeConfig.KEYBLOCKSIZE - 1); + keyMap.put(keyName, block); + + if (inGlobalTxn == false && !inSession) { + conn.commit(); + } + + return block; + } catch (Exception e) { + String error = "KeySequenceDirect:allocNewBlock - failure to allocate new block of keys for Entity type: " + keyName; + Log.error(e, error); + throw new Exception(error + e.toString()); + } + } + + private static final String getKeyForUpdateSQL = "select * from keygenejb kg where kg.keyname = ? for update"; + + private static final String createKeySQL = "insert into keygenejb " + "( keyname, keyval ) " + "VALUES ( ? , ? )"; + + private static final String updateKeyValueSQL = "update keygenejb set keyval = ? " + "where keyname = ?"; + +} diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/impl/direct/TradeDirect.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/impl/direct/TradeDirect.java new file mode 100644 index 00000000..071ee3d1 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/impl/direct/TradeDirect.java @@ -0,0 +1,1837 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.impl.direct; + +import java.io.Serializable; +import java.math.BigDecimal; +import java.sql.Connection; +import java.sql.PreparedStatement; +import java.sql.ResultSet; +import java.sql.SQLException; +import java.sql.Statement; +import java.sql.Timestamp; +import java.util.ArrayList; +import java.util.Collection; +import java.util.concurrent.Future; + +import javax.annotation.Resource; +import javax.enterprise.concurrent.ManagedExecutorService; +import javax.enterprise.context.Dependent; +import javax.enterprise.event.Event; +import javax.enterprise.event.NotificationOptions; +import javax.inject.Inject; +import javax.jms.JMSContext; +import javax.jms.JMSException; +import javax.jms.Queue; +import javax.jms.QueueConnectionFactory; +import javax.jms.TextMessage; +import javax.jms.Topic; +import javax.jms.TopicConnectionFactory; +import javax.sql.DataSource; +import javax.transaction.UserTransaction; +import javax.validation.constraints.NotNull; + +import com.ibm.websphere.samples.daytrader.interfaces.TradeServices; +import com.ibm.websphere.samples.daytrader.beans.MarketSummaryDataBean; +import com.ibm.websphere.samples.daytrader.entities.AccountDataBean; +import com.ibm.websphere.samples.daytrader.entities.AccountProfileDataBean; +import com.ibm.websphere.samples.daytrader.entities.HoldingDataBean; +import com.ibm.websphere.samples.daytrader.entities.OrderDataBean; +import com.ibm.websphere.samples.daytrader.entities.QuoteDataBean; +import com.ibm.websphere.samples.daytrader.util.FinancialUtils; +import com.ibm.websphere.samples.daytrader.util.Log; +import com.ibm.websphere.samples.daytrader.util.MDBStats; +import com.ibm.websphere.samples.daytrader.util.RecentQuotePriceChangeList; +import com.ibm.websphere.samples.daytrader.util.TradeConfig; +import com.ibm.websphere.samples.daytrader.interfaces.MarketSummaryUpdate; +import com.ibm.websphere.samples.daytrader.interfaces.RuntimeMode; +import com.ibm.websphere.samples.daytrader.interfaces.Trace; +import com.ibm.websphere.samples.daytrader.interfaces.TradeJDBC; + +/** + * TradeDirect uses direct JDBC and JMS access to a + * javax.sql.DataSource to implement the business methods of the + * Trade online broker application. These business methods represent the + * features and operations that can be performed by customers of the brokerage + * such as login, logout, get a stock quote, buy or sell a stock, etc. and are + * specified in the {@link com.ibm.websphere.samples.daytrader.TradeServices} + * interface + * + * Note: In order for this class to be thread-safe, a new TradeJDBC must be + * created for each call to a method from the TradeInterface interface. + * Otherwise, pooled connections may not be released. + * + * @see com.ibm.websphere.samples.daytrader.TradeServices + * + */ + +@Dependent +@TradeJDBC +@RuntimeMode("Direct (JDBC)") +@Trace +public class TradeDirect implements TradeServices, Serializable { + /** + * + */ + private static final long serialVersionUID = -8089049090952927985L; + + //This lock is used to serialize market summary operations. + private static final Integer marketSummaryLock = new Integer(0); + private static long nextMarketSummary = System.currentTimeMillis(); + private static MarketSummaryDataBean cachedMSDB = MarketSummaryDataBean.getRandomInstance(); + + private static BigDecimal ZERO = new BigDecimal(0.0); + private boolean inGlobalTxn = false; + private boolean inSession = false; + + // For Wildfly - add java:/ to these resource names. + + @Resource(name = "jms/QueueConnectionFactory", authenticationType = javax.annotation.Resource.AuthenticationType.APPLICATION) + //@Resource(name = "java:/jms/QueueConnectionFactory", authenticationType = javax.annotation.Resource.AuthenticationType.APPLICATION) + private QueueConnectionFactory queueConnectionFactory; + + @Resource(name = "jms/TopicConnectionFactory", authenticationType = javax.annotation.Resource.AuthenticationType.APPLICATION) + //@Resource(name = "java:/jms/TopicConnectionFactory", authenticationType = javax.annotation.Resource.AuthenticationType.APPLICATION) + private TopicConnectionFactory topicConnectionFactory; + + @Resource(lookup = "jms/TradeStreamerTopic") + //@Resource(lookup = "java:/jms/TradeStreamerTopic") + private Topic tradeStreamerTopic; + + @Resource(lookup = "jms/TradeBrokerQueue") + //@Resource(lookup = "java:/jms/TradeBrokerQueue") + private Queue tradeBrokerQueue; + + @Resource(lookup = "jdbc/TradeDataSource") + //@Resource(lookup = "java:/jdbc/TradeDataSource") + private DataSource datasource; + + @Resource + private UserTransaction txn; + + @Inject + RecentQuotePriceChangeList recentQuotePriceChangeList; + + @Inject + AsyncOrderSubmitter asyncOrderSubmitter; + + @Inject + @MarketSummaryUpdate + Event mkSummaryUpdateEvent; + + @Resource + private ManagedExecutorService mes; + + + @Override + public MarketSummaryDataBean getMarketSummary() throws Exception { + + if (TradeConfig.getMarketSummaryInterval() == 0) { + return getMarketSummaryInternal(); + } + if (TradeConfig.getMarketSummaryInterval() < 0) { + return cachedMSDB; + } + + /** + * This is a little funky. If its time to fetch a new Market summary + * then we'll synchronize access to make sure only one requester does + * it. Others will merely return the old copy until the new + * MarketSummary has been executed. + */ + + long currentTime = System.currentTimeMillis(); + + if (currentTime > nextMarketSummary) { + long oldNextMarketSummary = nextMarketSummary; + boolean fetch = false; + + synchronized (marketSummaryLock) { + /** + * Is it still ahead or did we miss lose the race? If we lost + * then let's get out of here as the work has already been done. + */ + if (oldNextMarketSummary == nextMarketSummary) { + fetch = true; + nextMarketSummary += TradeConfig.getMarketSummaryInterval() * 1000; + + /** + * If the server has been idle for a while then its possible + * that nextMarketSummary could be way off. Rather than try + * and play catch up we'll simply get in sync with the + * current time + the interval. + */ + if (nextMarketSummary < currentTime) { + nextMarketSummary = currentTime + TradeConfig.getMarketSummaryInterval() * 1000; + } + } + } + + /** + * If we're the lucky one then let's update the MarketSummary + */ + if (fetch) { + cachedMSDB = getMarketSummaryInternal(); + + } + } + + return cachedMSDB; + } + + + + /** + * @see TradeServices#getMarketSummary() + */ + + public MarketSummaryDataBean getMarketSummaryInternal() throws Exception { + + MarketSummaryDataBean marketSummaryData = null; + Connection conn = null; + try { + + Log.trace("TradeDirect:getMarketSummary - inSession(" + this.inSession + ")"); + + conn = getConn(); + PreparedStatement stmt = getStatement(conn, getTSIAQuotesOrderByChangeSQL, ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY); + + ArrayList topGainersData = new ArrayList(5); + ArrayList topLosersData = new ArrayList(5); + + ResultSet rs = stmt.executeQuery(); + + int count = 0; + while (rs.next() && (count++ < 5)) { + QuoteDataBean quoteData = getQuoteDataFromResultSet(rs); + topLosersData.add(quoteData); + } + + stmt.close(); + stmt = getStatement(conn, "select * from quoteejb q order by q.change1 DESC", ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY); + rs = stmt.executeQuery(); + + count = 0; + while (rs.next() && (count++ < 5)) { + QuoteDataBean quoteData = getQuoteDataFromResultSet(rs); + topGainersData.add(quoteData); + } + + /* + * rs.last(); count = 0; while (rs.previous() && (count++ < 5) ) { + * QuoteDataBean quoteData = getQuoteDataFromResultSet(rs); + * topGainersData.add(quoteData); } + */ + + stmt.close(); + + BigDecimal TSIA = ZERO; + BigDecimal openTSIA = ZERO; + double volume = 0.0; + + if ((topGainersData.size() > 0) || (topLosersData.size() > 0)) { + + stmt = getStatement(conn, getTSIASQL); + rs = stmt.executeQuery(); + + if (!rs.next()) { + Log.error("TradeDirect:getMarketSummary -- error w/ getTSIASQL -- no results"); + } else { + TSIA = rs.getBigDecimal("TSIA"); + } + stmt.close(); + + stmt = getStatement(conn, getOpenTSIASQL); + rs = stmt.executeQuery(); + + if (!rs.next()) { + Log.error("TradeDirect:getMarketSummary -- error w/ getOpenTSIASQL -- no results"); + } else { + openTSIA = rs.getBigDecimal("openTSIA"); + } + stmt.close(); + + stmt = getStatement(conn, getTSIATotalVolumeSQL); + rs = stmt.executeQuery(); + + if (!rs.next()) { + Log.error("TradeDirect:getMarketSummary -- error w/ getTSIATotalVolumeSQL -- no results"); + } else { + volume = rs.getDouble("totalVolume"); + } + stmt.close(); + } + commit(conn); + + marketSummaryData = new MarketSummaryDataBean(TSIA, openTSIA, volume, topGainersData, topLosersData); + mkSummaryUpdateEvent.fireAsync("MarketSummaryUpdate", NotificationOptions.builder().setExecutor(mes).build()); + + } + + catch (Exception e) { + Log.error("TradeDirect:login -- error logging in user", e); + rollBack(conn, e); + } finally { + releaseConn(conn); + } + return marketSummaryData; + + } + + /** + * @see TradeServices#buy(String, String, double) + */ + @Override + @NotNull + public OrderDataBean buy(String userID, String symbol, double quantity, int orderProcessingMode) throws Exception { + + final Connection conn = getConn(); + OrderDataBean orderData = null; + + BigDecimal total; + + try { + + Log.trace("TradeDirect:buy - inSession(" + this.inSession + ")");//, userID, symbol, new Double(quantity)); + + + if (!inSession && orderProcessingMode == TradeConfig.ASYNCH_2PHASE) { + + Log.trace("TradeDirect:buy create/begin global transaction"); + + + txn.begin(); + setInGlobalTxn(true); + } + + //conn = getConn(); + + AccountDataBean accountData = getAccountData(conn, userID); + QuoteDataBean quoteData = getQuoteData(conn, symbol); + HoldingDataBean holdingData = null; // the buy operation will create + // the holding + + orderData = createOrder(accountData, quoteData, holdingData, "buy", quantity); + + // Update -- account should be credited during completeOrder + BigDecimal price = quoteData.getPrice(); + BigDecimal orderFee = orderData.getOrderFee(); + total = (new BigDecimal(quantity).multiply(price)).add(orderFee); + // subtract total from account balance + creditAccountBalance(conn, accountData, total.negate()); + final Integer orderID = orderData.getOrderID(); + + try { + + if (orderProcessingMode == TradeConfig.SYNCH) { + completeOrder(conn, orderData.getOrderID()); + } else if (orderProcessingMode == TradeConfig.ASYNCH) { + completeOrderAsync(orderID, true); + } else if (orderProcessingMode == TradeConfig.ASYNCH_2PHASE) { + queueOrder(orderID, true); // 2-phase + } + } catch (JMSException je) { + Log.error("TradeBean:buy(" + userID + "," + symbol + "," + quantity + ") --> failed to queueOrder", je); + + + cancelOrder(conn, orderData.getOrderID()); + } + + orderData = getOrderData(conn, orderData.getOrderID().intValue()); + + if (getInGlobalTxn()) { + + Log.trace("TradeDirect:buy committing global transaction"); + + if (!inSession && orderProcessingMode == TradeConfig.ASYNCH_2PHASE) { + txn.commit(); + setInGlobalTxn(false); + } + } else { + commit(conn); + } + } catch (Exception e) { + Log.error("TradeDirect:buy error - rolling back", e); + if (getInGlobalTxn()) { + txn.rollback(); + } else { + rollBack(conn, e); + } + } finally { + releaseConn(conn); + } + + return orderData; + } + + /** + * @see TradeServices#sell(String, Integer) + */ + @Override + @NotNull + public OrderDataBean sell(String userID, Integer holdingID, int orderProcessingMode) throws Exception { + Connection conn = null; + OrderDataBean orderData = null; + //UserTransaction txn = null; + + /* + * total = (quantity * purchasePrice) + orderFee + */ + BigDecimal total; + + try { + + Log.trace("TradeDirect:sell - inSession(" + this.inSession + ")", userID, holdingID); + + + if (!inSession && orderProcessingMode == TradeConfig.ASYNCH_2PHASE) { + + Log.trace("TradeDirect:sell create/begin global transaction"); + + txn.begin(); + setInGlobalTxn(true); + } + + conn = getConn(); + + AccountDataBean accountData = getAccountData(conn, userID); + HoldingDataBean holdingData = getHoldingData(conn, holdingID.intValue()); + QuoteDataBean quoteData = null; + if (holdingData != null) { + quoteData = getQuoteData(conn, holdingData.getQuoteID()); + } + + if ((accountData == null) || (holdingData == null) || (quoteData == null)) { + String error = "TradeDirect:sell -- error selling stock -- unable to find: \n\taccount=" + accountData + "\n\tholding=" + holdingData + + "\n\tquote=" + quoteData + "\nfor user: " + userID + " and holdingID: " + holdingID; + Log.debug(error); + if (getInGlobalTxn()) { + txn.rollback(); + } else { + rollBack(conn, new Exception(error)); + } + orderData = new OrderDataBean(); + orderData.setOrderStatus("cancelled"); + return orderData; + } + + double quantity = holdingData.getQuantity(); + + orderData = createOrder(accountData, quoteData, holdingData, "sell", quantity); + + // Set the holdingSymbol purchaseDate to selling to signify the sell + // is "inflight" + updateHoldingStatus(conn, holdingData.getHoldingID(), holdingData.getQuoteID()); + + // UPDATE -- account should be credited during completeOrder + BigDecimal price = quoteData.getPrice(); + BigDecimal orderFee = orderData.getOrderFee(); + total = (new BigDecimal(quantity).multiply(price)).subtract(orderFee); + creditAccountBalance(conn, accountData, total); + + try { + if (orderProcessingMode == TradeConfig.SYNCH) { + completeOrder(conn, orderData.getOrderID()); + } else if (orderProcessingMode == TradeConfig.ASYNCH) { + this.completeOrderAsync(orderData.getOrderID(), true); + } else if (orderProcessingMode == TradeConfig.ASYNCH_2PHASE) { + queueOrder(orderData.getOrderID(), true); + } + } catch (JMSException je) { + Log.error("TradeBean:sell(" + userID + "," + holdingID + ") --> failed to queueOrder", je); + + cancelOrder(conn, orderData.getOrderID()); + } + + orderData = getOrderData(conn, orderData.getOrderID().intValue()); + + if (!inSession && orderProcessingMode == TradeConfig.ASYNCH_2PHASE) { + + Log.trace("TradeDirect:sell committing global transaction"); + + txn.commit(); + setInGlobalTxn(false); + } else { + commit(conn); + } + } catch (Exception e) { + Log.error("TradeDirect:sell error", e); + if (getInGlobalTxn()) { + txn.rollback(); + } else { + rollBack(conn, e); + } + } finally { + releaseConn(conn); + } + + return orderData; + } + + /** + * @see TradeServices#queueOrder(Integer) + */ + @Override + public void queueOrder(Integer orderID, boolean twoPhase) throws Exception { + + + Log.trace("TradeDirect:queueOrder - inSession(" + this.inSession + ")", orderID); + + + try (JMSContext context = queueConnectionFactory.createContext();){ + TextMessage message = context.createTextMessage(); + + message.setStringProperty("command", "neworder"); + message.setIntProperty("orderID", orderID.intValue()); + message.setBooleanProperty("twoPhase", twoPhase); + message.setBooleanProperty("direct", true); + message.setLongProperty("publishTime", System.currentTimeMillis()); + message.setText("neworder: orderID=" + orderID + " runtimeMode=Direct twoPhase=" + twoPhase); + + context.createProducer().send(tradeBrokerQueue, message); + } catch (Exception e) { + throw e; // pass the exception + } + } + + /** + * @see TradeServices#completeOrder(Integer) + */ + @Override + public OrderDataBean completeOrder(Integer orderID, boolean twoPhase) throws Exception { + OrderDataBean orderData = null; + Connection conn = null; + + try { // twoPhase + + + Log.trace("TradeDirect:completeOrder - inSession(" + this.inSession + ")", orderID); + + setInGlobalTxn(!inSession && twoPhase); + conn = getConn(); + + orderData = completeOrder(conn, orderID); + + commit(conn); + + } catch (Exception e) { + Log.error("TradeDirect:completeOrder -- error completing order", e); + rollBack(conn, e); + cancelOrder(orderID, twoPhase); + } finally { + releaseConn(conn); + } + + return orderData; + + } + + @Override + public Future completeOrderAsync(Integer orderID, boolean twoPhase) throws Exception { + if (!inSession) { + asyncOrderSubmitter.submitOrder(orderID, twoPhase); + } + return null; + } + + + private OrderDataBean completeOrder(Connection conn, Integer orderID) throws Exception { + //conn = getConn(); + OrderDataBean orderData = null; + + Log.trace("TradeDirect:completeOrderInternal - inSession(" + this.inSession + ")", orderID); + + + PreparedStatement stmt = getStatement(conn, getOrderSQL); + stmt.setInt(1, orderID.intValue()); + + ResultSet rs = stmt.executeQuery(); + + if (!rs.next()) { + Log.error("TradeDirect:completeOrder -- unable to find order: " + orderID); + stmt.close(); + return orderData; + } + orderData = getOrderDataFromResultSet(rs); + + String orderType = orderData.getOrderType(); + String orderStatus = orderData.getOrderStatus(); + + // if (order.isCompleted()) + if ((orderStatus.compareToIgnoreCase("completed") == 0) || (orderStatus.compareToIgnoreCase("alertcompleted") == 0) + || (orderStatus.compareToIgnoreCase("cancelled") == 0)) { + throw new Exception("TradeDirect:completeOrder -- attempt to complete Order that is already completed"); + } + + int accountID = rs.getInt("account_accountID"); + String quoteID = rs.getString("quote_symbol"); + int holdingID = rs.getInt("holding_holdingID"); + + BigDecimal price = orderData.getPrice(); + double quantity = orderData.getQuantity(); + + // get the data for the account and quote + // the holding will be created for a buy or extracted for a sell + + /* + * Use the AccountID and Quote Symbol from the Order AccountDataBean + * accountData = getAccountData(accountID, conn); QuoteDataBean + * quoteData = getQuoteData(conn, quoteID); + */ + String userID = getAccountProfileData(conn, new Integer(accountID)).getUserID(); + + HoldingDataBean holdingData = null; + + + Log.trace("TradeDirect:completeOrder--> Completing Order " + orderData.getOrderID() + "\n\t Order info: " + orderData + "\n\t Account info: " + + accountID + "\n\t Quote info: " + quoteID); + + + // if (order.isBuy()) + if (orderType.compareToIgnoreCase("buy") == 0) { + /* + * Complete a Buy operation - create a new Holding for the Account - + * deduct the Order cost from the Account balance + */ + + holdingData = createHolding(conn, accountID, quoteID, quantity, price); + updateOrderHolding(conn, orderID.intValue(), holdingData.getHoldingID().intValue()); + updateOrderStatus(conn, orderData.getOrderID(), "closed"); + updateQuotePriceVolume(orderData.getSymbol(), TradeConfig.getRandomPriceChangeFactor(), orderData.getQuantity()); + } + + // if (order.isSell()) { + if (orderType.compareToIgnoreCase("sell") == 0) { + /* + * Complete a Sell operation - remove the Holding from the Account - + * deposit the Order proceeds to the Account balance + */ + holdingData = getHoldingData(conn, holdingID); + if (holdingData == null) { + Log.debug("TradeDirect:completeOrder:sell -- user: " + userID + " already sold holding: " + holdingID); + updateOrderStatus(conn, orderData.getOrderID(), "cancelled"); + } else { + removeHolding(conn, holdingID, orderID.intValue()); + updateOrderStatus(conn, orderData.getOrderID(), "closed"); + updateQuotePriceVolume(orderData.getSymbol(), TradeConfig.getRandomPriceChangeFactor(), orderData.getQuantity()); + } + + } + + + + Log.trace("TradeDirect:completeOrder--> Completed Order " + orderData.getOrderID() + "\n\t Order info: " + orderData + "\n\t Account info: " + + accountID + "\n\t Quote info: " + quoteID + "\n\t Holding info: " + holdingData); + + stmt.close(); + + commit(conn); + + + + return orderData; + } + + /** + * @see TradeServices#cancelOrder(Integer, boolean) + */ + @Override + public void cancelOrder(Integer orderID, boolean twoPhase) throws Exception { + + Connection conn = null; + try { + + Log.trace("TradeDirect:cancelOrder - inSession(" + this.inSession + ")", orderID); + + setInGlobalTxn(!inSession && twoPhase); + conn = getConn(); + cancelOrder(conn, orderID); + commit(conn); + + } catch (Exception e) { + Log.error("TradeDirect:cancelOrder -- error cancelling order: " + orderID, e); + rollBack(conn, e); + } finally { + releaseConn(conn); + } + } + + private void cancelOrder(Connection conn, Integer orderID) throws Exception { + updateOrderStatus(conn, orderID, "cancelled"); + } + + @Override + public void orderCompleted(String userID, Integer orderID) throws Exception { + throw new UnsupportedOperationException("TradeDirect:orderCompleted method not supported"); + } + + private HoldingDataBean createHolding(Connection conn, int accountID, String symbol, double quantity, BigDecimal purchasePrice) throws Exception { + + Timestamp purchaseDate = new Timestamp(System.currentTimeMillis()); + PreparedStatement stmt = getStatement(conn, createHoldingSQL); + + Integer holdingID = KeySequenceDirect.getNextID(conn, "holding", inSession, getInGlobalTxn()); + stmt.setInt(1, holdingID.intValue()); + stmt.setTimestamp(2, purchaseDate); + stmt.setBigDecimal(3, purchasePrice); + stmt.setDouble(4, quantity); + stmt.setString(5, symbol); + stmt.setInt(6, accountID); + stmt.executeUpdate(); + + stmt.close(); + + return getHoldingData(conn, holdingID.intValue()); + } + + private void removeHolding(Connection conn, int holdingID, int orderID) throws Exception { + PreparedStatement stmt = getStatement(conn, removeHoldingSQL); + + stmt.setInt(1, holdingID); + stmt.executeUpdate(); + stmt.close(); + + // set the HoldingID to NULL for the purchase and sell order now that + // the holding as been removed + stmt = getStatement(conn, removeHoldingFromOrderSQL); + + stmt.setInt(1, holdingID); + stmt.executeUpdate(); + stmt.close(); + + } + + public OrderDataBean createOrder(AccountDataBean accountData, QuoteDataBean quoteData, HoldingDataBean holdingData, String orderType, + double quantity) throws Exception { + OrderDataBean orderData = null; + Connection conn = null; + try { + + conn = getConn(); + Timestamp currentDate = new Timestamp(System.currentTimeMillis()); + + PreparedStatement stmt = getStatement(conn, createOrderSQL); + + Integer orderID = KeySequenceDirect.getNextID(conn, "order", inSession, getInGlobalTxn()); + stmt.setInt(1, orderID.intValue()); + stmt.setString(2, orderType); + stmt.setString(3, "open"); + stmt.setTimestamp(4, currentDate); + stmt.setDouble(5, quantity); + stmt.setBigDecimal(6, quoteData.getPrice().setScale(FinancialUtils.SCALE, FinancialUtils.ROUND)); + stmt.setBigDecimal(7, TradeConfig.getOrderFee(orderType)); + stmt.setInt(8, accountData.getAccountID().intValue()); + if (holdingData == null) { + stmt.setNull(9, java.sql.Types.INTEGER); + } else { + stmt.setInt(9, holdingData.getHoldingID().intValue()); + } + stmt.setString(10, quoteData.getSymbol()); + stmt.executeUpdate(); + + orderData = getOrderData(conn, orderID.intValue()); + + stmt.close(); + + commit(conn); + } catch (Exception e) { + Log.error("TradeDirect:createOrder -- error getting user orders", e); + rollBack(conn, e); + } finally { + releaseConn(conn); + } + + return orderData; + } + + /** + * @see TradeServices#getOrders(String) + */ + @Override + public Collection getOrders(String userID) throws Exception { + Collection orderDataBeans = new ArrayList(); + Connection conn = null; + try { + Log.trace("TradeDirect:getOrders - inSession(" + this.inSession + ")", userID); + + + conn = getConn(); + PreparedStatement stmt = getStatement(conn, getOrdersByUserSQL); + stmt.setString(1, userID); + + ResultSet rs = stmt.executeQuery(); + + // TODO: return top 5 orders for now -- next version will add a + // getAllOrders method + // also need to get orders sorted by order id descending + int i = 0; + while ((rs.next()) && (i++ < 5)) { + OrderDataBean orderData = getOrderDataFromResultSet(rs); + orderDataBeans.add(orderData); + } + + stmt.close(); + commit(conn); + + } catch (Exception e) { + Log.error("TradeDirect:getOrders -- error getting user orders", e); + rollBack(conn, e); + } finally { + releaseConn(conn); + } + return orderDataBeans; + } + + /** + * @see TradeServices#getClosedOrders(String) + */ + @Override + public Collection getClosedOrders(String userID) throws Exception { + Collection orderDataBeans = new ArrayList(); + Connection conn = null; + try { + + Log.trace("TradeDirect:getClosedOrders - inSession(" + this.inSession + ")", userID); + + + conn = getConn(); + PreparedStatement stmt = getStatement(conn, getClosedOrdersSQL); + stmt.setString(1, userID); + + ResultSet rs = stmt.executeQuery(); + + while (rs.next()) { + OrderDataBean orderData = getOrderDataFromResultSet(rs); + orderData.setOrderStatus("completed"); + updateOrderStatus(conn, orderData.getOrderID(), orderData.getOrderStatus()); + orderDataBeans.add(orderData); + + } + + stmt.close(); + commit(conn); + } catch (Exception e) { + Log.error("TradeDirect:getOrders -- error getting user orders", e); + rollBack(conn, e); + } finally { + releaseConn(conn); + } + return orderDataBeans; + } + + /** + * @see TradeServices#createQuote(String, String, BigDecimal) + */ + @Override + public QuoteDataBean createQuote(String symbol, String companyName, BigDecimal price) throws Exception { + + QuoteDataBean quoteData = null; + Connection conn = null; + try { + + Log.trace("TradeDirect:createQuote - inSession(" + this.inSession + ")"); + + + price = price.setScale(FinancialUtils.SCALE, FinancialUtils.ROUND); + double volume = 0.0, change = 0.0; + + conn = getConn(); + PreparedStatement stmt = getStatement(conn, createQuoteSQL); + stmt.setString(1, symbol); // symbol + stmt.setString(2, companyName); // companyName + stmt.setDouble(3, volume); // volume + stmt.setBigDecimal(4, price); // price + stmt.setBigDecimal(5, price); // open + stmt.setBigDecimal(6, price); // low + stmt.setBigDecimal(7, price); // high + stmt.setDouble(8, change); // change + + stmt.executeUpdate(); + stmt.close(); + commit(conn); + + quoteData = new QuoteDataBean(symbol, companyName, volume, price, price, price, price, change); + } catch (Exception e) { + Log.error("TradeDirect:createQuote -- error creating quote", e); + } finally { + releaseConn(conn); + } + return quoteData; + } + + /** + * @see TradeServices#getQuote(String) + */ + + @Override + public QuoteDataBean getQuote(String symbol) throws Exception { + QuoteDataBean quoteData = null; + Connection conn = null; + + try { + + Log.trace("TradeDirect:getQuote - inSession(" + this.inSession + ")", symbol); + + + conn = getConn(); + quoteData = getQuote(conn, symbol); + commit(conn); + } catch (Exception e) { + Log.error("TradeDirect:getQuote -- error getting quote", e); + rollBack(conn, e); + } finally { + releaseConn(conn); + } + return quoteData; + } + + private QuoteDataBean getQuote(Connection conn, String symbol) throws Exception { + QuoteDataBean quoteData = null; + PreparedStatement stmt = getStatement(conn, getQuoteSQL); + stmt.setString(1, symbol); // symbol + + ResultSet rs = stmt.executeQuery(); + + if (!rs.next()) { + Log.error("TradeDirect:getQuote -- failure no result.next() for symbol: " + symbol); + } else { + quoteData = getQuoteDataFromResultSet(rs); + } + + stmt.close(); + + return quoteData; + } + + private QuoteDataBean getQuoteForUpdate(Connection conn, String symbol) throws Exception { + QuoteDataBean quoteData = null; + PreparedStatement stmt = getStatement(conn, getQuoteForUpdateSQL); + stmt.setString(1, symbol); // symbol + + ResultSet rs = stmt.executeQuery(); + + if (!rs.next()) { + Log.error("TradeDirect:getQuote -- failure no result.next()"); + } else { + quoteData = getQuoteDataFromResultSet(rs); + } + + stmt.close(); + + return quoteData; + } + + /** + * @see TradeServices#getAllQuotes(String) + */ + @Override + public Collection getAllQuotes() throws Exception { + Collection quotes = new ArrayList(); + QuoteDataBean quoteData = null; + + Connection conn = null; + try { + conn = getConn(); + + PreparedStatement stmt = getStatement(conn, getAllQuotesSQL); + + ResultSet rs = stmt.executeQuery(); + + while (!rs.next()) { + quoteData = getQuoteDataFromResultSet(rs); + quotes.add(quoteData); + } + + stmt.close(); + } catch (Exception e) { + Log.error("TradeDirect:getAllQuotes", e); + rollBack(conn, e); + } finally { + releaseConn(conn); + } + + return quotes; + } + + /** + * @see TradeServices#getHoldings(String) + */ + @Override + public Collection getHoldings(String userID) throws Exception { + Collection holdingDataBeans = new ArrayList(); + Connection conn = null; + try { + + Log.trace("TradeDirect:getHoldings - inSession(" + this.inSession + ")", userID); + + + conn = getConn(); + PreparedStatement stmt = getStatement(conn, getHoldingsForUserSQL); + stmt.setString(1, userID); + + ResultSet rs = stmt.executeQuery(); + + while (rs.next()) { + HoldingDataBean holdingData = getHoldingDataFromResultSet(rs); + holdingDataBeans.add(holdingData); + } + + stmt.close(); + commit(conn); + + } catch (Exception e) { + Log.error("TradeDirect:getHoldings -- error getting user holings", e); + rollBack(conn, e); + } finally { + releaseConn(conn); + } + return holdingDataBeans; + } + + /** + * @see TradeServices#getHolding(Integer) + */ + @Override + public HoldingDataBean getHolding(Integer holdingID) throws Exception { + HoldingDataBean holdingData = null; + Connection conn = null; + try { + + Log.trace("TradeDirect:getHolding - inSession(" + this.inSession + ")", holdingID); + + + conn = getConn(); + holdingData = getHoldingData(holdingID.intValue()); + + commit(conn); + + } catch (Exception e) { + Log.error("TradeDirect:getHolding -- error getting holding " + holdingID + "", e); + rollBack(conn, e); + } finally { + releaseConn(conn); + } + return holdingData; + } + + /** + * @see TradeServices#getAccountData(String) + */ + @Override + public AccountDataBean getAccountData(String userID) throws Exception { + try { + AccountDataBean accountData = null; + Connection conn = null; + try { + + Log.trace("TradeDirect:getAccountData - inSession(" + this.inSession + ")", userID); + + + conn = getConn(); + accountData = getAccountData(conn, userID); + commit(conn); + + } catch (Exception e) { + Log.error("TradeDirect:getAccountData -- error getting account data", e); + rollBack(conn, e); + } finally { + releaseConn(conn); + } + return accountData; + } catch (Exception e) { + throw new Exception(e.getMessage(), e); + } + } + + private AccountDataBean getAccountData(Connection conn, String userID) throws Exception { + PreparedStatement stmt = getStatement(conn, getAccountForUserSQL); + stmt.setString(1, userID); + ResultSet rs = stmt.executeQuery(); + AccountDataBean accountData = getAccountDataFromResultSet(rs); + stmt.close(); + return accountData; + } + + /** + * @see TradeServices#getAccountData(String) + */ + public AccountDataBean getAccountData(int accountID) throws Exception { + AccountDataBean accountData = null; + Connection conn = null; + try { + + Log.trace("TradeDirect:getAccountData - inSession(" + this.inSession + ")", new Integer(accountID)); + + conn = getConn(); + accountData = getAccountData(accountID, conn); + commit(conn); + + } catch (Exception e) { + Log.error("TradeDirect:getAccountData -- error getting account data", e); + rollBack(conn, e); + } finally { + releaseConn(conn); + } + return accountData; + } + + private AccountDataBean getAccountData(int accountID, Connection conn) throws Exception { + PreparedStatement stmt = getStatement(conn, getAccountSQL); + stmt.setInt(1, accountID); + ResultSet rs = stmt.executeQuery(); + AccountDataBean accountData = getAccountDataFromResultSet(rs); + stmt.close(); + return accountData; + } + + private QuoteDataBean getQuoteData(Connection conn, String symbol) throws Exception { + QuoteDataBean quoteData = null; + PreparedStatement stmt = getStatement(conn, getQuoteSQL); + stmt.setString(1, symbol); + ResultSet rs = stmt.executeQuery(); + if (!rs.next()) { + Log.error("TradeDirect:getQuoteData -- could not find quote for symbol=" + symbol); + } else { + quoteData = getQuoteDataFromResultSet(rs); + } + stmt.close(); + return quoteData; + } + + private HoldingDataBean getHoldingData(int holdingID) throws Exception { + HoldingDataBean holdingData = null; + Connection conn = null; + try { + conn = getConn(); + holdingData = getHoldingData(conn, holdingID); + commit(conn); + } catch (Exception e) { + Log.error("TradeDirect:getHoldingData -- error getting data", e); + rollBack(conn, e); + } finally { + releaseConn(conn); + } + return holdingData; + } + + private HoldingDataBean getHoldingData(Connection conn, int holdingID) throws Exception { + HoldingDataBean holdingData = null; + PreparedStatement stmt = getStatement(conn, getHoldingSQL); + stmt.setInt(1, holdingID); + ResultSet rs = stmt.executeQuery(); + if (!rs.next()) { + // already sold + Log.debug("TradeDirect:getHoldingData -- no results -- holdingID=" + holdingID); + } else { + holdingData = getHoldingDataFromResultSet(rs); + } + + stmt.close(); + return holdingData; + } + + private OrderDataBean getOrderData(Connection conn, int orderID) throws Exception { + OrderDataBean orderData = null; + + Log.trace("TradeDirect:getOrderData(conn, " + orderID + ")"); + + PreparedStatement stmt = getStatement(conn, getOrderSQL); + stmt.setInt(1, orderID); + ResultSet rs = stmt.executeQuery(); + if (!rs.next()) { + // already sold + Log.error("TradeDirect:getOrderData -- no results for orderID:" + orderID); + } else { + orderData = getOrderDataFromResultSet(rs); + } + stmt.close(); + return orderData; + } + + /** + * @see TradeServices#getAccountProfileData(String) + */ + @Override + public AccountProfileDataBean getAccountProfileData(String userID) throws Exception { + AccountProfileDataBean accountProfileData = null; + Connection conn = null; + + try { + + Log.trace("TradeDirect:getAccountProfileData - inSession(" + this.inSession + ")", userID); + + + conn = getConn(); + accountProfileData = getAccountProfileData(conn, userID); + commit(conn); + } catch (Exception e) { + Log.error("TradeDirect:getAccountProfileData -- error getting profile data", e); + rollBack(conn, e); + } finally { + releaseConn(conn); + } + return accountProfileData; + } + + private AccountProfileDataBean getAccountProfileData(Connection conn, String userID) throws Exception { + PreparedStatement stmt = getStatement(conn, getAccountProfileSQL); + stmt.setString(1, userID); + + ResultSet rs = stmt.executeQuery(); + + AccountProfileDataBean accountProfileData = getAccountProfileDataFromResultSet(rs); + stmt.close(); + return accountProfileData; + } + + private AccountProfileDataBean getAccountProfileData(Connection conn, Integer accountID) throws Exception { + PreparedStatement stmt = getStatement(conn, getAccountProfileForAccountSQL); + stmt.setInt(1, accountID.intValue()); + + ResultSet rs = stmt.executeQuery(); + + AccountProfileDataBean accountProfileData = getAccountProfileDataFromResultSet(rs); + stmt.close(); + return accountProfileData; + } + + /** + * @see TradeServices#updateAccountProfile(AccountProfileDataBean) + */ + @Override + public AccountProfileDataBean updateAccountProfile(AccountProfileDataBean profileData) throws Exception { + AccountProfileDataBean accountProfileData = null; + Connection conn = null; + + try { + + Log.trace("TradeDirect:updateAccountProfileData - inSession(" + this.inSession + ")", profileData.getUserID()); + + conn = getConn(); + updateAccountProfile(conn, profileData); + + accountProfileData = getAccountProfileData(conn, profileData.getUserID()); + commit(conn); + } catch (Exception e) { + Log.error("TradeDirect:getAccountProfileData -- error getting profile data", e); + rollBack(conn, e); + } finally { + releaseConn(conn); + } + return accountProfileData; + } + + private void creditAccountBalance(Connection conn, AccountDataBean accountData, BigDecimal credit) throws Exception { + PreparedStatement stmt = getStatement(conn, creditAccountBalanceSQL); + + stmt.setBigDecimal(1, credit); + stmt.setInt(2, accountData.getAccountID().intValue()); + + stmt.executeUpdate(); + stmt.close(); + + } + + // Set Timestamp to zero to denote sell is inflight + // UPDATE -- could add a "status" attribute to holding + private void updateHoldingStatus(Connection conn, Integer holdingID, String symbol) throws Exception { + Timestamp ts = new Timestamp(0); + PreparedStatement stmt = getStatement(conn, "update holdingejb set purchasedate= ? where holdingid = ?"); + + stmt.setTimestamp(1, ts); + stmt.setInt(2, holdingID.intValue()); + stmt.executeUpdate(); + stmt.close(); + } + + private void updateOrderStatus(Connection conn, Integer orderID, String status) throws Exception { + PreparedStatement stmt = getStatement(conn, updateOrderStatusSQL); + + stmt.setString(1, status); + stmt.setTimestamp(2, new Timestamp(System.currentTimeMillis())); + stmt.setInt(3, orderID.intValue()); + stmt.executeUpdate(); + stmt.close(); + } + + private void updateOrderHolding(Connection conn, int orderID, int holdingID) throws Exception { + PreparedStatement stmt = getStatement(conn, updateOrderHoldingSQL); + + stmt.setInt(1, holdingID); + stmt.setInt(2, orderID); + stmt.executeUpdate(); + stmt.close(); + } + + private void updateAccountProfile(Connection conn, AccountProfileDataBean profileData) throws Exception { + PreparedStatement stmt = getStatement(conn, updateAccountProfileSQL); + + stmt.setString(1, profileData.getPassword()); + stmt.setString(2, profileData.getFullName()); + stmt.setString(3, profileData.getAddress()); + stmt.setString(4, profileData.getEmail()); + stmt.setString(5, profileData.getCreditCard()); + stmt.setString(6, profileData.getUserID()); + + stmt.executeUpdate(); + stmt.close(); + } + + @Override + public QuoteDataBean updateQuotePriceVolume(String symbol, BigDecimal changeFactor, double sharesTraded) throws Exception { + return updateQuotePriceVolumeInt(symbol, changeFactor, sharesTraded, TradeConfig.getPublishQuotePriceChange()); + } + + /** + * Update a quote's price and volume + * + * @param symbol + * The PK of the quote + * @param changeFactor + * the percent to change the old price by (between 50% and 150%) + * @param sharedTraded + * the ammount to add to the current volume + * @param publishQuotePriceChange + * used by the PingJDBCWrite Primitive to ensure no JMS is used, + * should be true for all normal calls to this API + */ + public QuoteDataBean updateQuotePriceVolumeInt(String symbol, BigDecimal changeFactor, double sharesTraded, boolean publishQuotePriceChange) + throws Exception { + + if (TradeConfig.getUpdateQuotePrices() == false) { + return new QuoteDataBean(); + } + + QuoteDataBean quoteData = null; + Connection conn = null; + + try { + Log.trace("TradeDirect:updateQuotePriceVolume - inSession(" + this.inSession + ")", symbol, changeFactor, new Double(sharesTraded)); + + conn = getConn(); + + quoteData = getQuoteForUpdate(conn, symbol); + BigDecimal oldPrice = quoteData.getPrice(); + BigDecimal openPrice = quoteData.getOpen(); + + double newVolume = quoteData.getVolume() + sharesTraded; + + if (oldPrice.equals(TradeConfig.PENNY_STOCK_PRICE)) { + changeFactor = TradeConfig.PENNY_STOCK_RECOVERY_MIRACLE_MULTIPLIER; + } else if (oldPrice.compareTo(TradeConfig.MAXIMUM_STOCK_PRICE) > 0) { + changeFactor = TradeConfig.MAXIMUM_STOCK_SPLIT_MULTIPLIER; + } + + BigDecimal newPrice = changeFactor.multiply(oldPrice).setScale(2, BigDecimal.ROUND_HALF_UP); + double change = newPrice.subtract(openPrice).doubleValue(); + + updateQuotePriceVolume(conn, quoteData.getSymbol(), newPrice, newVolume, change); + quoteData = getQuote(conn, symbol); + + commit(conn); + + if (publishQuotePriceChange) { + publishQuotePriceChange(quoteData, oldPrice, changeFactor, sharesTraded); + } + + recentQuotePriceChangeList.add(quoteData); + + } catch (Exception e) { + Log.error("TradeDirect:updateQuotePriceVolume -- error updating quote price/volume for symbol:" + symbol); + rollBack(conn, e); + throw e; + } finally { + releaseConn(conn); + } + return quoteData; + } + + private void updateQuotePriceVolume(Connection conn, String symbol, BigDecimal newPrice, double newVolume, double change) throws Exception { + + PreparedStatement stmt = getStatement(conn, updateQuotePriceVolumeSQL); + + stmt.setBigDecimal(1, newPrice); + stmt.setDouble(2, change); + stmt.setDouble(3, newVolume); + stmt.setString(4, symbol); + + stmt.executeUpdate(); + stmt.close(); + } + + private void publishQuotePriceChange(QuoteDataBean quoteData, BigDecimal oldPrice, BigDecimal changeFactor, double sharesTraded) throws Exception { + + Log.trace("TradeDirect:publishQuotePrice PUBLISHING to MDB quoteData = " + quoteData); + + try (JMSContext context = topicConnectionFactory.createContext();){ + TextMessage message = context.createTextMessage(); + + message.setStringProperty("command", "updateQuote"); + message.setStringProperty("symbol", quoteData.getSymbol()); + message.setStringProperty("company", quoteData.getCompanyName()); + message.setStringProperty("price", quoteData.getPrice().toString()); + message.setStringProperty("oldPrice", oldPrice.toString()); + message.setStringProperty("open", quoteData.getOpen().toString()); + message.setStringProperty("low", quoteData.getLow().toString()); + message.setStringProperty("high", quoteData.getHigh().toString()); + message.setDoubleProperty("volume", quoteData.getVolume()); + + message.setStringProperty("changeFactor", changeFactor.toString()); + message.setDoubleProperty("sharesTraded", sharesTraded); + message.setLongProperty("publishTime", System.currentTimeMillis()); + message.setText("Update Stock price for " + quoteData.getSymbol() + " old price = " + oldPrice + " new price = " + quoteData.getPrice()); + + + context.createProducer().send(tradeStreamerTopic, message); + + } catch (Exception e) { + throw e; // pass exception back + + } + } + + /** + * @see TradeServices#login(String, String) + */ + + @Override + public AccountDataBean login(String userID, String password) throws Exception { + + AccountDataBean accountData = null; + Connection conn = null; + try { + Log.trace("TradeDirect:login - inSession(" + this.inSession + ")", userID, password); + + conn = getConn(); + PreparedStatement stmt = getStatement(conn, getAccountProfileSQL); + stmt.setString(1, userID); + + ResultSet rs = stmt.executeQuery(); + if (!rs.next()) { + Log.error("TradeDirect:login -- failure to find account for" + userID); + throw new javax.ejb.FinderException("Cannot find account for" + userID); + } + + String pw = rs.getString("passwd"); + stmt.close(); + if ((pw == null) || (pw.equals(password) == false)) { + String error = "TradeDirect:Login failure for user: " + userID + "\n\tIncorrect password-->" + userID + ":" + password; + Log.error(error); + throw new Exception(error); + } + + stmt = getStatement(conn, loginSQL); + stmt.setTimestamp(1, new Timestamp(System.currentTimeMillis())); + stmt.setString(2, userID); + + stmt.executeUpdate(); + stmt.close(); + + stmt = getStatement(conn, getAccountForUserSQL); + stmt.setString(1, userID); + rs = stmt.executeQuery(); + + accountData = getAccountDataFromResultSet(rs); + + stmt.close(); + + commit(conn); + } catch (Exception e) { + Log.error("TradeDirect:login -- error logging in user", e); + rollBack(conn, e); + } finally { + releaseConn(conn); + } + return accountData; + + /* + * setLastLogin( new Timestamp(System.currentTimeMillis()) ); + * setLoginCount( getLoginCount() + 1 ); + */ + } + + /** + * @see TradeServices#logout(String) + */ + @Override + public void logout(String userID) throws Exception { + Log.trace("TradeDirect:logout - inSession(" + this.inSession + ")", userID); + + Connection conn = null; + try { + conn = getConn(); + PreparedStatement stmt = getStatement(conn, logoutSQL); + stmt.setString(1, userID); + stmt.executeUpdate(); + stmt.close(); + + commit(conn); + } catch (Exception e) { + Log.error("TradeDirect:logout -- error logging out user", e); + rollBack(conn, e); + } finally { + releaseConn(conn); + } + } + + /** + * @see TradeServices#register(String, String, String, String, String, + * String, BigDecimal, boolean) + */ + + @Override + public AccountDataBean register(String userID, String password, String fullname, String address, String email, String creditcard, BigDecimal openBalance) + throws Exception { + + AccountDataBean accountData = null; + Connection conn = null; + try { + Log.trace("TradeDirect:register - inSession(" + this.inSession + ")"); + + conn = getConn(); + PreparedStatement stmt = getStatement(conn, createAccountSQL); + + Integer accountID = KeySequenceDirect.getNextID(conn, "account", inSession, getInGlobalTxn()); + BigDecimal balance = openBalance; + Timestamp creationDate = new Timestamp(System.currentTimeMillis()); + Timestamp lastLogin = creationDate; + int loginCount = 0; + int logoutCount = 0; + + stmt.setInt(1, accountID.intValue()); + stmt.setTimestamp(2, creationDate); + stmt.setBigDecimal(3, openBalance); + stmt.setBigDecimal(4, balance); + stmt.setTimestamp(5, lastLogin); + stmt.setInt(6, loginCount); + stmt.setInt(7, logoutCount); + stmt.setString(8, userID); + stmt.executeUpdate(); + stmt.close(); + + stmt = getStatement(conn, createAccountProfileSQL); + stmt.setString(1, userID); + stmt.setString(2, password); + stmt.setString(3, fullname); + stmt.setString(4, address); + stmt.setString(5, email); + stmt.setString(6, creditcard); + stmt.executeUpdate(); + stmt.close(); + + commit(conn); + + accountData = new AccountDataBean(accountID, loginCount, logoutCount, lastLogin, creationDate, balance, openBalance, userID); + + } catch (Exception e) { + Log.error("TradeDirect:register -- error registering new user", e); + } finally { + releaseConn(conn); + } + return accountData; + } + + private AccountDataBean getAccountDataFromResultSet(ResultSet rs) throws Exception { + AccountDataBean accountData = null; + + if (!rs.next()) { + Log.error("TradeDirect:getAccountDataFromResultSet -- cannot find account data"); + } else { + accountData = new AccountDataBean(new Integer(rs.getInt("accountID")), rs.getInt("loginCount"), rs.getInt("logoutCount"), + rs.getTimestamp("lastLogin"), rs.getTimestamp("creationDate"), rs.getBigDecimal("balance"), rs.getBigDecimal("openBalance"), + rs.getString("profile_userID")); + } + return accountData; + } + + private AccountProfileDataBean getAccountProfileDataFromResultSet(ResultSet rs) throws Exception { + AccountProfileDataBean accountProfileData = null; + + if (!rs.next()) { + Log.error("TradeDirect:getAccountProfileDataFromResultSet -- cannot find accountprofile data"); + } else { + accountProfileData = new AccountProfileDataBean(rs.getString("userID"), rs.getString("passwd"), rs.getString("fullName"), rs.getString("address"), + rs.getString("email"), rs.getString("creditCard")); + } + + return accountProfileData; + } + + private HoldingDataBean getHoldingDataFromResultSet(ResultSet rs) throws Exception { + HoldingDataBean holdingData = null; + + holdingData = new HoldingDataBean(new Integer(rs.getInt("holdingID")), rs.getDouble("quantity"), rs.getBigDecimal("purchasePrice"), + rs.getTimestamp("purchaseDate"), rs.getString("quote_symbol")); + return holdingData; + } + + private QuoteDataBean getQuoteDataFromResultSet(ResultSet rs) throws Exception { + QuoteDataBean quoteData = null; + + quoteData = new QuoteDataBean(rs.getString("symbol"), rs.getString("companyName"), rs.getDouble("volume"), rs.getBigDecimal("price"), + rs.getBigDecimal("open1"), rs.getBigDecimal("low"), rs.getBigDecimal("high"), rs.getDouble("change1")); + return quoteData; + } + + private OrderDataBean getOrderDataFromResultSet(ResultSet rs) throws Exception { + OrderDataBean orderData = null; + + orderData = new OrderDataBean(new Integer(rs.getInt("orderID")), rs.getString("orderType"), rs.getString("orderStatus"), rs.getTimestamp("openDate"), + rs.getTimestamp("completionDate"), rs.getDouble("quantity"), rs.getBigDecimal("price"), rs.getBigDecimal("orderFee"), + rs.getString("quote_symbol")); + return orderData; + } + + public boolean recreateDBTables(Object[] sqlBuffer, java.io.PrintWriter out) throws Exception { + // Clear MDB Statistics + MDBStats.getInstance().reset(); + + Connection conn = null; + boolean success = false; + try { + + Log.trace("TradeDirect:recreateDBTables"); + + conn = getConn(); + Statement stmt = conn.createStatement(); + int bufferLength = sqlBuffer.length; + for (int i = 0; i < bufferLength; i++) { + try { + stmt.executeUpdate((String) sqlBuffer[i]); + // commit(conn); + } catch (SQLException ex) { + // Ignore DROP statements as tables won't always exist. + if (((String) sqlBuffer[i]).indexOf("DROP ") < 0) { + Log.error("TradeDirect:recreateDBTables SQL Exception thrown on executing the foll sql command: " + sqlBuffer[i], ex); + out.println("
    SQL Exception thrown on executing the foll sql command: " + sqlBuffer[i] + " . Check log for details.
    "); + } + } + } + stmt.close(); + commit(conn); + success = true; + } catch (Exception e) { + Log.error(e, "TradeDirect:recreateDBTables() -- Error dropping and recreating the database tables"); + } finally { + releaseConn(conn); + } + return success; + } + + ; + + + + private void releaseConn(Connection conn) throws Exception { + try { + if (conn != null) { + conn.close(); + if (Log.doTrace()) { + synchronized (lock) { + connCount--; + } + Log.trace("TradeDirect:releaseConn -- connection closed, connCount=" + connCount); + } + } + } catch (Exception e) { + Log.error("TradeDirect:releaseConnection -- failed to close connection", e); + } + } + + + /* + * Allocate a new connection to the datasource + */ + private static int connCount = 0; + + private static Integer lock = new Integer(0); + + private Connection getConn() throws Exception { + + Connection conn = datasource.getConnection(); + + if (!this.inGlobalTxn) { + conn.setAutoCommit(false); + } + if (Log.doTrace()) { + synchronized (lock) { + connCount++; + } + Log.trace("TradeDirect:getConn -- new connection allocated, IsolationLevel=" + conn.getTransactionIsolation() + " connectionCount = " + connCount); + } + + return conn; + } + + public Connection getConnPublic() throws Exception { + return getConn(); + } + + /* + * Commit the provided connection if not under Global Transaction scope - + * conn.commit() is not allowed in a global transaction. the txn manager + * will perform the commit + */ + private void commit(Connection conn) throws Exception { + if (!inSession) { + if ((getInGlobalTxn() == false) && (conn != null)) { + conn.commit(); + } + } + } + + /* + * Rollback the statement for the given connection + */ + private void rollBack(Connection conn, Exception e) throws Exception { + if (!inSession) { + Log.log("TradeDirect:rollBack -- rolling back conn due to previously caught exception -- inGlobalTxn=" + getInGlobalTxn()); + if ((getInGlobalTxn() == false) && (conn != null)) { + conn.rollback(); + } else { + throw e; // Throw the exception + // so the Global txn manager will rollBack + } + } + } + + /* + * Allocate a new prepared statment for this connection + */ + private PreparedStatement getStatement(Connection conn, String sql) throws Exception { + return conn.prepareStatement(sql); + } + + private PreparedStatement getStatement(Connection conn, String sql, int type, int concurrency) throws Exception { + return conn.prepareStatement(sql, type, concurrency); + } + + private static final String createQuoteSQL = "insert into quoteejb " + "( symbol, companyName, volume, price, open1, low, high, change1 ) " + + "VALUES ( ? , ? , ? , ? , ? , ? , ? , ? )"; + + private static final String createAccountSQL = "insert into accountejb " + + "( accountid, creationDate, openBalance, balance, lastLogin, loginCount, logoutCount, profile_userid) " + + "VALUES ( ? , ? , ? , ? , ? , ? , ? , ? )"; + + private static final String createAccountProfileSQL = "insert into accountprofileejb " + "( userid, passwd, fullname, address, email, creditcard ) " + + "VALUES ( ? , ? , ? , ? , ? , ? )"; + + private static final String createHoldingSQL = "insert into holdingejb " + + "( holdingid, purchaseDate, purchasePrice, quantity, quote_symbol, account_accountid ) " + "VALUES ( ? , ? , ? , ? , ? , ? )"; + + private static final String createOrderSQL = "insert into orderejb " + + "( orderid, ordertype, orderstatus, opendate, quantity, price, orderfee, account_accountid, holding_holdingid, quote_symbol) " + + "VALUES ( ? , ? , ? , ? , ? , ? , ? , ? , ? , ?)"; + + private static final String removeHoldingSQL = "delete from holdingejb where holdingid = ?"; + + private static final String removeHoldingFromOrderSQL = "update orderejb set holding_holdingid=null where holding_holdingid = ?"; + + private static final String updateAccountProfileSQL = "update accountprofileejb set " + "passwd = ?, fullname = ?, address = ?, email = ?, creditcard = ? " + + "where userid = (select profile_userid from accountejb a " + "where a.profile_userid=?)"; + + private static final String loginSQL = "update accountejb set lastLogin=?, logincount=logincount+1 " + "where profile_userid=?"; + + private static final String logoutSQL = "update accountejb set logoutcount=logoutcount+1 " + "where profile_userid=?"; + + private static final String getAccountSQL = "select * from accountejb a where a.accountid = ?"; + + private static final String getAccountProfileSQL = "select * from accountprofileejb ap where ap.userid = " + + "(select profile_userid from accountejb a where a.profile_userid=?)"; + + private static final String getAccountProfileForAccountSQL = "select * from accountprofileejb ap where ap.userid = " + + "(select profile_userid from accountejb a where a.accountid=?)"; + + private static final String getAccountForUserSQL = "select * from accountejb a where a.profile_userid = " + + "( select userid from accountprofileejb ap where ap.userid = ?)"; + + private static final String getHoldingSQL = "select * from holdingejb h where h.holdingid = ?"; + + private static final String getHoldingsForUserSQL = "select * from holdingejb h where h.account_accountid = " + + "(select a.accountid from accountejb a where a.profile_userid = ?)"; + + private static final String getOrderSQL = "select * from orderejb o where o.orderid = ?"; + + private static final String getOrdersByUserSQL = "select * from orderejb o where o.account_accountid = " + + "(select a.accountid from accountejb a where a.profile_userid = ?)"; + + private static final String getClosedOrdersSQL = "select * from orderejb o " + "where o.orderstatus = 'closed' AND o.account_accountid = " + + "(select a.accountid from accountejb a where a.profile_userid = ?)"; + + private static final String getQuoteSQL = "select * from quoteejb q where q.symbol=?"; + + private static final String getAllQuotesSQL = "select * from quoteejb q"; + + private static final String getQuoteForUpdateSQL = "select * from quoteejb q where q.symbol=? For Update"; + + private static final String getTSIAQuotesOrderByChangeSQL = "select * from quoteejb q order by q.change1"; + + private static final String getTSIASQL = "select SUM(price)/count(*) as TSIA from quoteejb q "; + + private static final String getOpenTSIASQL = "select SUM(open1)/count(*) as openTSIA from quoteejb q "; + + private static final String getTSIATotalVolumeSQL = "select SUM(volume) as totalVolume from quoteejb q "; + + private static final String creditAccountBalanceSQL = "update accountejb set " + "balance = balance + ? " + "where accountid = ?"; + + private static final String updateOrderStatusSQL = "update orderejb set " + "orderstatus = ?, completiondate = ? " + "where orderid = ?"; + + private static final String updateOrderHoldingSQL = "update orderejb set " + "holding_holdingID = ? " + "where orderid = ?"; + + private static final String updateQuotePriceVolumeSQL = "update quoteejb set " + "price = ?, change1 = ?, volume = ? " + "where symbol = ?"; + + /** + * Gets the inGlobalTxn + * + * @return Returns a boolean + */ + private boolean getInGlobalTxn() { + return inGlobalTxn; + } + + /** + * Sets the inGlobalTxn + * + * @param inGlobalTxn + * The inGlobalTxn to set + */ + private void setInGlobalTxn(boolean inGlobalTxn) { + this.inGlobalTxn = inGlobalTxn; + } + + public void setInSession(boolean inSession) { + this.inSession = inSession; + } + + @Override + public int getImpl() { + return TradeConfig.DIRECT; + } + + + + @Override + public QuoteDataBean pingTwoPhase(String symbol) { + throw new UnsupportedOperationException(); + } + + + + @Override + public double investmentReturn(double rnd1, double rnd2) { + throw new UnsupportedOperationException(); + } +} diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/impl/direct/TradeDirectDBUtils.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/impl/direct/TradeDirectDBUtils.java new file mode 100644 index 00000000..c9284dc7 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/impl/direct/TradeDirectDBUtils.java @@ -0,0 +1,472 @@ +/** + * (C) Copyright IBM Corporation 2019. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.impl.direct; + +import java.io.BufferedReader; +import java.io.IOException; +import java.io.InputStream; +import java.io.InputStreamReader; +import java.math.BigDecimal; +import java.sql.Connection; +import java.sql.DatabaseMetaData; +import java.sql.PreparedStatement; +import java.sql.ResultSet; +import java.sql.SQLException; +import java.sql.Statement; +import java.util.ArrayList; + +import javax.annotation.Resource; +import javax.enterprise.context.ApplicationScoped; +import javax.inject.Inject; +import javax.sql.DataSource; + +import com.ibm.websphere.samples.daytrader.beans.RunStatsDataBean; +import com.ibm.websphere.samples.daytrader.entities.AccountDataBean; +import com.ibm.websphere.samples.daytrader.interfaces.TradeDB; +import com.ibm.websphere.samples.daytrader.interfaces.TradeJDBC; +import com.ibm.websphere.samples.daytrader.interfaces.TradeServices; +import com.ibm.websphere.samples.daytrader.util.Log; +import com.ibm.websphere.samples.daytrader.util.MDBStats; +import com.ibm.websphere.samples.daytrader.util.TradeConfig; + +/** + * TradeBuildDB uses operations provided by the TradeApplication to (a) create the Database tables + * (b)populate a DayTrader database without creating the tables. Specifically, a + * new DayTrader User population is created using UserIDs of the form "uid:xxx" + * where xxx is a sequential number (e.g. uid:0, uid:1, etc.). New stocks are also created of the + * form "s:xxx", again where xxx represents sequential numbers (e.g. s:1, s:2, etc.) + */ +@ApplicationScoped +public class TradeDirectDBUtils implements TradeDB { + + // For Wildfly - add java:/ to this resource. + + @Resource(lookup = "jdbc/TradeDataSource") + //@Resource(lookup = "java:/jdbc/TradeDataSource") + private DataSource datasource; + + @Inject + @TradeJDBC + TradeServices ts; + + public String checkDBProductName() throws Exception { + Connection conn = null; + String dbProductName = null; + + try { + + conn = datasource.getConnection(); + DatabaseMetaData dbmd = conn.getMetaData(); + dbProductName = dbmd.getDatabaseProductName(); + } catch (SQLException e) { + Log.error(e, "TradeDirect:checkDBProductName() -- Error checking the Daytrader Database Product Name"); + } finally { + conn.close(); + } + return dbProductName; + } + + + /** + * Re-create the DayTrader db tables and populate them OR just populate a DayTrader DB, logging to the provided output stream + */ + public void buildDB(java.io.PrintWriter out, InputStream ddlFile) throws Exception { + String symbol, companyName; + int errorCount = 0; // Give up gracefully after 10 errors + + // TradeStatistics.statisticsEnabled=false; // disable statistics + out.println("
    TradeBuildDB: Building DayTrader Database...
    This operation will take several minutes. Please wait..."); + out.println(""); + + if (ddlFile != null) { + //out.println("
    TradeBuildDB: **** warPath= "+warPath+" ****
    "); + + boolean success = false; + + Object[] sqlBuffer = null; + + //parse the DDL file and fill the SQL commands into a buffer + try { + sqlBuffer = parseDDLToBuffer(ddlFile); + } catch (Exception e) { + Log.error(e, "TradeBuildDB: Unable to parse DDL file"); + out.println("
    TradeBuildDB: **** Unable to parse DDL file for the specified database ****
    "); + return; + } + if ((sqlBuffer == null) || (sqlBuffer.length == 0)) { + out.println("
    TradeBuildDB: **** Parsing DDL file returned empty buffer, please check that a valid DB specific DDL file is available and retry ****
    "); + return; + } + + // send the sql commands buffer to drop and recreate the Daytrader tables + out.println("
    TradeBuildDB: **** Dropping and Recreating the DayTrader tables... ****
    "); + try { + success = recreateDBTables(sqlBuffer, out); + } catch (Exception e) { + Log.error(e, "TradeBuildDB: Unable to drop and recreate DayTrader Db Tables, please check for database consistency before continuing"); + out.println("TradeBuildDB: Unable to drop and recreate DayTrader Db Tables, please check for database consistency before continuing"); + return; + } + if (!success) { + out.println("
    TradeBuildDB: **** Unable to drop and recreate DayTrader Db Tables, please check for database consistency before continuing ****
    "); + return; + } + out.println("
    TradeBuildDB: **** DayTrader tables successfully created! ****

    Please Stop and Re-start your Daytrader application (or your application server) and then use the \"Repopulate Daytrader Database\" link to populate your database.


    "); + return; + } // end of createDBTables + + out.println("
    TradeBuildDB: **** Creating " + TradeConfig.getMAX_QUOTES() + " Quotes ****
    "); + //Attempt to delete all of the Trade users and Trade Quotes first + try { + resetTrade(true); + } catch (Exception e) { + Log.error(e, "TradeBuildDB: Unable to delete Trade users (uid:0, uid:1, ...) and Trade Quotes (s:0, s:1, ...)"); + } + for (int i = 0; i < TradeConfig.getMAX_QUOTES(); i++) { + symbol = "s:" + i; + companyName = "S" + i + " Incorporated"; + try { + ts.createQuote(symbol, companyName, new java.math.BigDecimal(TradeConfig.rndPrice())); + if (i % 10 == 0) { + out.print("....." + symbol); + if (i % 100 == 0) { + out.println(" -
    "); + out.flush(); + } + } + } catch (Exception e) { + if (errorCount++ >= 10) { + String error = "Populate Trade DB aborting after 10 create quote errors. Check the EJB datasource configuration. Check the log for details

    Exception is:
    " + + e.toString(); + Log.error(e, error); + throw e; + } + } + } + out.println("
    "); + out.println("
    **** Registering " + TradeConfig.getMAX_USERS() + " Users **** "); + errorCount = 0; //reset for user registrations + + // Registration is a formal operation in Trade 2. + for (int i = 0; i < TradeConfig.getMAX_USERS(); i++) { + String userID = "uid:" + i; + String fullname = TradeConfig.rndFullName(); + String email = TradeConfig.rndEmail(userID); + String address = TradeConfig.rndAddress(); + String creditcard = TradeConfig.rndCreditCard(); + double initialBalance = (double) (TradeConfig.rndInt(100000)) + 200000; + if (i == 0) { + initialBalance = 1000000; // uid:0 starts with a cool million. + } + try { + AccountDataBean accountData = ts.register(userID, "xxx", fullname, address, email, creditcard, new BigDecimal(initialBalance)); + + if (accountData != null) { + if (i % 50 == 0) { + out.print("
    Account# " + accountData.getAccountID() + " userID=" + userID); + } // end-if + + int holdings = TradeConfig.rndInt(TradeConfig.getMAX_HOLDINGS() + 1); // 0-MAX_HOLDING (inclusive), avg holdings per user = (MAX-0)/2 + double quantity = 0; + + for (int j = 0; j < holdings; j++) { + symbol = TradeConfig.rndSymbol(); + quantity = TradeConfig.rndQuantity(); + ts.buy(userID, symbol, quantity, TradeConfig.getOrderProcessingMode()); + } // end-for + if (i % 50 == 0) { + out.println(" has " + holdings + " holdings."); + out.flush(); + } // end-if + } else { + out.println("
    UID " + userID + " already registered.
    "); + out.flush(); + } // end-if + + } catch (Exception e) { + if (errorCount++ >= 10) { + String error = "Populate Trade DB aborting after 10 user registration errors. Check the log for details.

    Exception is:
    " + + e.toString(); + Log.error(e, error); + throw e; + } + } + } // end-for + out.println(""); + } + + private boolean recreateDBTables(Object[] sqlBuffer, java.io.PrintWriter out) throws Exception { + // Clear MDB Statistics + MDBStats.getInstance().reset(); + + Connection conn = null; + boolean success = false; + try { + conn = datasource.getConnection(); + Statement stmt = conn.createStatement(); + int bufferLength = sqlBuffer.length; + for (int i = 0; i < bufferLength; i++) { + try { + stmt.executeUpdate((String) sqlBuffer[i]); + // commit(conn); + } catch (SQLException ex) { + // Ignore DROP statements as tables won't always exist. + if (((String) sqlBuffer[i]).indexOf("DROP ") < 0) { + Log.error("TradeDirect:recreateDBTables SQL Exception thrown on executing the foll sql command: " + sqlBuffer[i], ex); + out.println("
    SQL Exception thrown on executing the foll sql command: " + sqlBuffer[i] + " . Check log for details.
    "); + } + } + } + stmt.close(); + conn.commit(); + success = true; + } catch (Exception e) { + Log.error(e, "TradeDirect:recreateDBTables() -- Error dropping and recreating the database tables"); + } finally { + conn.close(); + } + return success; + } + + + public RunStatsDataBean resetTrade(boolean deleteAll) throws Exception { + // Clear MDB Statistics + MDBStats.getInstance().reset(); + // Reset Trade + + RunStatsDataBean runStatsData = new RunStatsDataBean(); + Connection conn = null; + try { + + conn = datasource.getConnection(); + conn.setAutoCommit(false); + PreparedStatement stmt = null; + ResultSet rs = null; + + if (deleteAll) { + try { + stmt = getStatement(conn, "delete from quoteejb"); + stmt.executeUpdate(); + stmt.close(); + stmt = getStatement(conn, "delete from accountejb"); + stmt.executeUpdate(); + stmt.close(); + stmt = getStatement(conn, "delete from accountprofileejb"); + stmt.executeUpdate(); + stmt.close(); + stmt = getStatement(conn, "delete from holdingejb"); + stmt.executeUpdate(); + stmt.close(); + stmt = getStatement(conn, "delete from orderejb"); + stmt.executeUpdate(); + stmt.close(); + // FUTURE: - DuplicateKeyException - For now, don't start at + // zero as KeySequenceDirect and KeySequenceBean will still + // give out + // the cached Block and then notice this change. Better + // solution is + // to signal both classes to drop their cached blocks + // stmt = getStatement(conn, "delete from keygenejb"); + // stmt.executeUpdate(); + // stmt.close(); + conn.commit(); + } catch (Exception e) { + Log.error(e, "TradeDirect:resetTrade(deleteAll) -- Error deleting Trade users and stock from the Trade database"); + } + return runStatsData; + } + + stmt = getStatement(conn, "delete from holdingejb where holdingejb.account_accountid is null"); + stmt.executeUpdate(); + stmt.close(); + + // Count and Delete newly registered users (users w/ id that start + // "ru:%": + stmt = getStatement(conn, "delete from accountprofileejb where userid like 'ru:%'"); + stmt.executeUpdate(); + stmt.close(); + + stmt = getStatement(conn, "delete from orderejb where account_accountid in (select accountid from accountejb a where a.profile_userid like 'ru:%')"); + stmt.executeUpdate(); + stmt.close(); + + stmt = getStatement(conn, + "delete from holdingejb where account_accountid in (select accountid from accountejb a where a.profile_userid like 'ru:%')"); + stmt.executeUpdate(); + stmt.close(); + + stmt = getStatement(conn, "delete from accountejb where profile_userid like 'ru:%'"); + int newUserCount = stmt.executeUpdate(); + runStatsData.setNewUserCount(newUserCount); + stmt.close(); + + // Count of trade users + stmt = getStatement(conn, "select count(accountid) as \"tradeUserCount\" from accountejb a where a.profile_userid like 'uid:%'"); + rs = stmt.executeQuery(); + rs.next(); + int tradeUserCount = rs.getInt("tradeUserCount"); + runStatsData.setTradeUserCount(tradeUserCount); + stmt.close(); + + rs.close(); + // Count of trade stocks + stmt = getStatement(conn, "select count(symbol) as \"tradeStockCount\" from quoteejb a where a.symbol like 's:%'"); + rs = stmt.executeQuery(); + rs.next(); + int tradeStockCount = rs.getInt("tradeStockCount"); + runStatsData.setTradeStockCount(tradeStockCount); + stmt.close(); + + // Count of trade users login, logout + stmt = getStatement(conn, + "select sum(loginCount) as \"sumLoginCount\", sum(logoutCount) as \"sumLogoutCount\" from accountejb a where a.profile_userID like 'uid:%'"); + rs = stmt.executeQuery(); + rs.next(); + int sumLoginCount = rs.getInt("sumLoginCount"); + int sumLogoutCount = rs.getInt("sumLogoutCount"); + runStatsData.setSumLoginCount(sumLoginCount); + runStatsData.setSumLogoutCount(sumLogoutCount); + stmt.close(); + + rs.close(); + // Update logoutcount and loginCount back to zero + + stmt = getStatement(conn, "update accountejb set logoutCount=0,loginCount=0 where profile_userID like 'uid:%'"); + stmt.executeUpdate(); + stmt.close(); + + // count holdings for trade users + stmt = getStatement(conn, "select count(holdingid) as \"holdingCount\" from holdingejb h where h.account_accountid in " + + "(select accountid from accountejb a where a.profile_userid like 'uid:%')"); + + rs = stmt.executeQuery(); + rs.next(); + int holdingCount = rs.getInt("holdingCount"); + runStatsData.setHoldingCount(holdingCount); + stmt.close(); + rs.close(); + + // count orders for trade users + stmt = getStatement(conn, "select count(orderid) as \"orderCount\" from orderejb o where o.account_accountid in " + + "(select accountid from accountejb a where a.profile_userid like 'uid:%')"); + + rs = stmt.executeQuery(); + rs.next(); + int orderCount = rs.getInt("orderCount"); + runStatsData.setOrderCount(orderCount); + stmt.close(); + rs.close(); + + // count orders by type for trade users + stmt = getStatement(conn, "select count(orderid) \"buyOrderCount\"from orderejb o where (o.account_accountid in " + + "(select accountid from accountejb a where a.profile_userid like 'uid:%')) AND " + " (o.orderType='buy')"); + + rs = stmt.executeQuery(); + rs.next(); + int buyOrderCount = rs.getInt("buyOrderCount"); + runStatsData.setBuyOrderCount(buyOrderCount); + stmt.close(); + rs.close(); + + // count orders by type for trade users + stmt = getStatement(conn, "select count(orderid) \"sellOrderCount\"from orderejb o where (o.account_accountid in " + + "(select accountid from accountejb a where a.profile_userid like 'uid:%')) AND " + " (o.orderType='sell')"); + + rs = stmt.executeQuery(); + rs.next(); + int sellOrderCount = rs.getInt("sellOrderCount"); + runStatsData.setSellOrderCount(sellOrderCount); + stmt.close(); + rs.close(); + + // Delete cancelled orders + stmt = getStatement(conn, "delete from orderejb where orderStatus='cancelled'"); + int cancelledOrderCount = stmt.executeUpdate(); + runStatsData.setCancelledOrderCount(cancelledOrderCount); + stmt.close(); + rs.close(); + + // count open orders by type for trade users + stmt = getStatement(conn, "select count(orderid) \"openOrderCount\"from orderejb o where (o.account_accountid in " + + "(select accountid from accountejb a where a.profile_userid like 'uid:%')) AND " + " (o.orderStatus='open')"); + + rs = stmt.executeQuery(); + rs.next(); + int openOrderCount = rs.getInt("openOrderCount"); + runStatsData.setOpenOrderCount(openOrderCount); + + stmt.close(); + rs.close(); + // Delete orders for holding which have been purchased and sold + stmt = getStatement(conn, "delete from orderejb where holding_holdingid is null"); + int deletedOrderCount = stmt.executeUpdate(); + runStatsData.setDeletedOrderCount(deletedOrderCount); + stmt.close(); + rs.close(); + + conn.commit(); + + System.out.println("TradeDirect:reset Run stats data\n\n" + runStatsData); + } catch (Exception e) { + Log.error(e, "Failed to reset Trade"); + conn.rollback(); + throw e; + } finally { + conn.close(); + } + return runStatsData; + + } + + private PreparedStatement getStatement(Connection conn, String sql) throws Exception { + return conn.prepareStatement(sql); + } + + public Object[] parseDDLToBuffer(InputStream ddlFile) throws Exception { + BufferedReader br = null; + ArrayList sqlBuffer = new ArrayList(30); //initial capacity 30 assuming we have 30 ddl-sql statements to read + + try { + br = new BufferedReader(new InputStreamReader(ddlFile)); + String s; + String sql = new String(); + while ((s = br.readLine()) != null) { + s = s.trim(); + if ((s.length() != 0) && (s.charAt(0) != '#')) // Empty lines or lines starting with "#" are ignored + { + sql = sql + " " + s; + if (s.endsWith(";")) { // reached end of sql statement + sql = sql.replace(';', ' '); //remove the semicolon + sqlBuffer.add(sql); + sql = ""; + } + } + } + } catch (IOException ex) { + Log.error("TradeBuildDB:parseDDLToBuffer Exeception during open/read of File: " + ddlFile, ex); + throw ex; + } finally { + if (br != null) { + try { + br.close(); + } catch (IOException ex) { + Log.error("TradeBuildDB:parseDDLToBuffer Failed to close BufferedReader", ex); + } + } + } + return sqlBuffer.toArray(); + } +} diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/impl/ejb3/AsyncScheduledOrder.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/impl/ejb3/AsyncScheduledOrder.java new file mode 100644 index 00000000..5b00b1bb --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/impl/ejb3/AsyncScheduledOrder.java @@ -0,0 +1,59 @@ +/** + * (C) Copyright IBM Corporation 2019. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.impl.ejb3; + + +import javax.enterprise.context.Dependent; +import javax.enterprise.inject.Any; +import javax.enterprise.inject.Instance; +import javax.inject.Inject; + +import com.ibm.websphere.samples.daytrader.interfaces.TradeServices; +import com.ibm.websphere.samples.daytrader.util.TradeConfig; +import com.ibm.websphere.samples.daytrader.util.TradeRunTimeModeLiteral; + + +@Dependent +public class AsyncScheduledOrder implements Runnable { + + TradeServices tradeService; + + Integer orderID; + boolean twoPhase; + + @Inject + public AsyncScheduledOrder(@Any Instance services) { + tradeService = services.select(new TradeRunTimeModeLiteral(TradeConfig.getRunTimeModeNames()[TradeConfig.getRunTimeMode()])).get(); + } + + public void setProperties(Integer orderID, boolean twoPhase) { + this.orderID = orderID; + this.twoPhase = twoPhase; + } + + @Override + public void run() { + + + try { + tradeService.completeOrder(orderID, twoPhase); + + } catch (Exception e) { + + e.printStackTrace(); + } + } +} diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/impl/ejb3/AsyncScheduledOrderSubmitter.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/impl/ejb3/AsyncScheduledOrderSubmitter.java new file mode 100644 index 00000000..24290eda --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/impl/ejb3/AsyncScheduledOrderSubmitter.java @@ -0,0 +1,41 @@ +/** + * (C) Copyright IBM Corporation 2019. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.impl.ejb3; + +import java.util.concurrent.Future; +import java.util.concurrent.TimeUnit; + +import javax.annotation.Resource; +import javax.enterprise.concurrent.ManagedScheduledExecutorService; +import javax.enterprise.context.RequestScoped; +import javax.inject.Inject; + +@RequestScoped +public class AsyncScheduledOrderSubmitter { + + + @Resource + private ManagedScheduledExecutorService mes; + + @Inject + private AsyncScheduledOrder asyncOrder; + + + public Future submitOrder(Integer orderID, boolean twoPhase) { + asyncOrder.setProperties(orderID,twoPhase); + return mes.schedule(asyncOrder,500,TimeUnit.MILLISECONDS); + } +} diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/impl/ejb3/MarketSummarySingleton.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/impl/ejb3/MarketSummarySingleton.java new file mode 100644 index 00000000..ceef6ff0 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/impl/ejb3/MarketSummarySingleton.java @@ -0,0 +1,138 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.impl.ejb3; + +import java.math.BigDecimal; +import java.util.ArrayList; +import java.util.List; + +import javax.annotation.Resource; +import javax.ejb.Lock; +import javax.ejb.LockType; +import javax.ejb.Schedule; +import javax.ejb.Singleton; +import javax.enterprise.concurrent.ManagedExecutorService; +import javax.enterprise.event.Event; +import javax.enterprise.event.NotificationOptions; +import javax.inject.Inject; +import javax.json.JsonObject; +import javax.persistence.EntityManager; +import javax.persistence.PersistenceContext; +import javax.persistence.TypedQuery; +import javax.persistence.criteria.CriteriaBuilder; +import javax.persistence.criteria.CriteriaQuery; +import javax.persistence.criteria.Root; + +import com.ibm.websphere.samples.daytrader.beans.MarketSummaryDataBean; +import com.ibm.websphere.samples.daytrader.entities.QuoteDataBean; +import com.ibm.websphere.samples.daytrader.interfaces.MarketSummaryUpdate; +import com.ibm.websphere.samples.daytrader.util.FinancialUtils; +import com.ibm.websphere.samples.daytrader.util.Log; +import com.ibm.websphere.samples.daytrader.util.TradeConfig; + +@Singleton +public class MarketSummarySingleton { + + private MarketSummaryDataBean marketSummaryDataBean; + + @PersistenceContext + private EntityManager entityManager; + + @Inject + @MarketSummaryUpdate + Event mkSummaryUpdateEvent; + + @Resource + private ManagedExecutorService mes; + + + /* Update Market Summary every 20 seconds */ + @Schedule(second = "*/20",minute = "*", hour = "*", persistent = false) + private void updateMarketSummary() { + + + Log.trace("MarketSummarySingleton:updateMarketSummary -- updating market summary"); + + + if (TradeConfig.getRunTimeMode() != TradeConfig.EJB3) + { + Log.trace("MarketSummarySingleton:updateMarketSummary -- Not EJB3 Mode, so not updating"); + return; // Only do the actual work if in EJB3 Mode + } + + List quotes; + + try { + // Find Trade Stock Index Quotes (Top 100 quotes) ordered by their change in value + CriteriaBuilder criteriaBuilder = entityManager.getCriteriaBuilder(); + CriteriaQuery criteriaQuery = criteriaBuilder.createQuery(QuoteDataBean.class); + Root quoteRoot = criteriaQuery.from(QuoteDataBean.class); + criteriaQuery.orderBy(criteriaBuilder.desc(quoteRoot.get("change1"))); + criteriaQuery.select(quoteRoot); + TypedQuery q = entityManager.createQuery(criteriaQuery); + quotes = q.getResultList(); + } catch (Exception e) { + Log.debug("Warning: The database has not been configured. If this is the first time the application has been started, please create and populate the database tables. Then restart the server."); + return; + } + + /* TODO: Make this cleaner? */ + QuoteDataBean[] quoteArray = quotes.toArray(new QuoteDataBean[quotes.size()]); + ArrayList topGainers = new ArrayList(5); + ArrayList topLosers = new ArrayList(5); + BigDecimal TSIA = FinancialUtils.ZERO; + BigDecimal openTSIA = FinancialUtils.ZERO; + double totalVolume = 0.0; + + if (quoteArray.length > 5) { + for (int i = 0; i < 5; i++) { + topGainers.add(quoteArray[i]); + } + for (int i = quoteArray.length - 1; i >= quoteArray.length - 5; i--) { + topLosers.add(quoteArray[i]); + } + + for (QuoteDataBean quote : quoteArray) { + BigDecimal price = quote.getPrice(); + BigDecimal open = quote.getOpen(); + double volume = quote.getVolume(); + TSIA = TSIA.add(price); + openTSIA = openTSIA.add(open); + totalVolume += volume; + } + TSIA = TSIA.divide(new BigDecimal(quoteArray.length), FinancialUtils.ROUND); + openTSIA = openTSIA.divide(new BigDecimal(quoteArray.length), FinancialUtils.ROUND); + } + + setMarketSummaryDataBean(new MarketSummaryDataBean(TSIA, openTSIA, totalVolume, topGainers, topLosers)); + mkSummaryUpdateEvent.fireAsync("MarketSummaryUpdate", NotificationOptions.builder().setExecutor(mes).build()); + } + + @Lock(LockType.READ) + public MarketSummaryDataBean getMarketSummaryDataBean() { + if (marketSummaryDataBean == null){ + updateMarketSummary(); + } + + return marketSummaryDataBean; + } + + @Lock(LockType.WRITE) + public void setMarketSummaryDataBean(MarketSummaryDataBean marketSummaryDataBean) { + this.marketSummaryDataBean = marketSummaryDataBean; + } + +} diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/impl/ejb3/TradeSLSBBean.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/impl/ejb3/TradeSLSBBean.java new file mode 100644 index 00000000..780e5219 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/impl/ejb3/TradeSLSBBean.java @@ -0,0 +1,618 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.impl.ejb3; + +import java.math.BigDecimal; +import java.sql.Timestamp; +import java.util.Collection; +import java.util.Comparator; +import java.util.Iterator; +import java.util.List; +import java.util.concurrent.Future; + +import javax.annotation.Resource; +import javax.ejb.EJB; +import javax.ejb.EJBException; +import javax.ejb.SessionContext; +import javax.ejb.Stateless; +import javax.ejb.TransactionAttribute; +import javax.ejb.TransactionAttributeType; +import javax.ejb.TransactionManagement; +import javax.ejb.TransactionManagementType; +import javax.inject.Inject; +import javax.jms.JMSContext; +import javax.jms.Queue; +import javax.jms.QueueConnectionFactory; +import javax.jms.TextMessage; +import javax.jms.Topic; +import javax.jms.TopicConnectionFactory; +import javax.persistence.EntityManager; +import javax.persistence.PersistenceContext; +import javax.persistence.TypedQuery; +import javax.persistence.criteria.CriteriaBuilder; +import javax.persistence.criteria.CriteriaQuery; +import javax.persistence.criteria.Root; +import javax.transaction.RollbackException; +import javax.validation.constraints.NotNull; + +import com.ibm.websphere.samples.daytrader.interfaces.RuntimeMode; +import com.ibm.websphere.samples.daytrader.interfaces.Trace; +import com.ibm.websphere.samples.daytrader.interfaces.TradeEJB; +import com.ibm.websphere.samples.daytrader.interfaces.TradeServices; +import com.ibm.websphere.samples.daytrader.beans.MarketSummaryDataBean; +import com.ibm.websphere.samples.daytrader.entities.AccountDataBean; +import com.ibm.websphere.samples.daytrader.entities.AccountProfileDataBean; +import com.ibm.websphere.samples.daytrader.entities.HoldingDataBean; +import com.ibm.websphere.samples.daytrader.entities.OrderDataBean; +import com.ibm.websphere.samples.daytrader.entities.QuoteDataBean; +import com.ibm.websphere.samples.daytrader.util.FinancialUtils; +import com.ibm.websphere.samples.daytrader.util.Log; +import com.ibm.websphere.samples.daytrader.util.RecentQuotePriceChangeList; +import com.ibm.websphere.samples.daytrader.util.TradeConfig; + +@Stateless +@TradeEJB +@RuntimeMode("Full EJB3") +@Trace +@TransactionAttribute(TransactionAttributeType.REQUIRED) +@TransactionManagement(TransactionManagementType.CONTAINER) +public class TradeSLSBBean implements TradeServices { + + // For Wildfly - add java:/ to these resource names. + @Resource(name = "jms/QueueConnectionFactory", authenticationType = javax.annotation.Resource.AuthenticationType.APPLICATION) + //@Resource(name = "java:/jms/QueueConnectionFactory", authenticationType = javax.annotation.Resource.AuthenticationType.APPLICATION) + private QueueConnectionFactory queueConnectionFactory; + + @Resource(name = "jms/TopicConnectionFactory", authenticationType = javax.annotation.Resource.AuthenticationType.APPLICATION) + //@Resource(name = "java:/jms/TopicConnectionFactory", authenticationType = javax.annotation.Resource.AuthenticationType.APPLICATION) + private TopicConnectionFactory topicConnectionFactory; + + @Resource(lookup = "jms/TradeStreamerTopic") + //@Resource(lookup = "java:/jms/TradeStreamerTopic") + private Topic tradeStreamerTopic; + + @Resource(lookup = "jms/TradeBrokerQueue") + //@Resource(lookup = "java:/jms/TradeBrokerQueue") + private Queue tradeBrokerQueue; + + @PersistenceContext + private EntityManager entityManager; + + @Resource + private SessionContext context; + + @EJB + MarketSummarySingleton marketSummarySingleton; + + @Inject + AsyncScheduledOrderSubmitter asyncEJBOrderSubmitter; + + @Inject + RecentQuotePriceChangeList recentQuotePriceChangeList; + + @Override + public MarketSummaryDataBean getMarketSummary() { + return marketSummarySingleton.getMarketSummaryDataBean(); + } + + @Override + @NotNull + public OrderDataBean buy(String userID, String symbol, double quantity, int orderProcessingMode) { + OrderDataBean order = null; + BigDecimal total; + try { + + AccountProfileDataBean profile = entityManager.find(AccountProfileDataBean.class, userID); + AccountDataBean account = profile.getAccount(); + QuoteDataBean quote = entityManager.find(QuoteDataBean.class, symbol); + HoldingDataBean holding = null; // The holding will be created by + // this buy order + + order = createOrder(account, quote, holding, "buy", quantity); + + // UPDATE - account should be credited during completeOrder + BigDecimal price = quote.getPrice(); + BigDecimal orderFee = order.getOrderFee(); + BigDecimal balance = account.getBalance(); + total = (new BigDecimal(quantity).multiply(price)).add(orderFee); + account.setBalance(balance.subtract(total)); + final Integer orderID=order.getOrderID(); + + if (orderProcessingMode == TradeConfig.SYNCH) { + completeOrder(orderID, false); + } else if (orderProcessingMode == TradeConfig.ASYNCH) { + completeOrderAsync(orderID, false); + } else if (orderProcessingMode == TradeConfig.ASYNCH_2PHASE) { + queueOrder(orderID, true); + } + } catch (Exception e) { + Log.error("TradeSLSBBean:buy(" + userID + "," + symbol + "," + quantity + ") --> failed", e); + /* On exception - cancel the order */ + // TODO figure out how to do this with JPA + // if (order != null) order.cancel(); + throw new EJBException(e); + } + return order; + } + + @Override + @NotNull + public OrderDataBean sell(final String userID, final Integer holdingID, int orderProcessingMode) { + OrderDataBean order=null; + BigDecimal total; + try { + AccountProfileDataBean profile = entityManager.find(AccountProfileDataBean.class, userID); + AccountDataBean account = profile.getAccount(); + + HoldingDataBean holding = entityManager.find(HoldingDataBean.class, holdingID); + + if (holding == null) { + Log.debug("TradeSLSBBean:sell User " + userID + " attempted to sell holding " + holdingID + " which has already been sold"); + + OrderDataBean orderData = new OrderDataBean(); + orderData.setOrderStatus("cancelled"); + entityManager.persist(orderData); + + return orderData; + } + + QuoteDataBean quote = holding.getQuote(); + double quantity = holding.getQuantity(); + + order = createOrder(account, quote, holding, "sell", quantity); + + // UPDATE the holding purchase data to signify this holding is + // "inflight" to be sold + // -- could add a new holdingStatus attribute to holdingEJB + holding.setPurchaseDate(new java.sql.Timestamp(0)); + + // UPDATE - account should be credited during completeOrder + BigDecimal price = quote.getPrice(); + BigDecimal orderFee = order.getOrderFee(); + BigDecimal balance = account.getBalance(); + total = (new BigDecimal(quantity).multiply(price)).subtract(orderFee); + account.setBalance(balance.add(total)); + final Integer orderID=order.getOrderID(); + + if (orderProcessingMode == TradeConfig.SYNCH) { + completeOrder(orderID, false); + } else if (orderProcessingMode == TradeConfig.ASYNCH) { + completeOrderAsync(orderID, false); + } else if (orderProcessingMode == TradeConfig.ASYNCH_2PHASE) { + queueOrder(orderID, true); + } + + } catch (Exception e) { + Log.error("TradeSLSBBean:sell(" + userID + "," + holdingID + ") --> failed", e); + // if (order != null) order.cancel(); + // UPDATE - handle all exceptions like: + throw new EJBException("TradeSLSBBean:sell(" + userID + "," + holdingID + ")", e); + } + return order; + } + + public void queueOrder(Integer orderID, boolean twoPhase) { + + // 2 phase + try (JMSContext queueContext = queueConnectionFactory.createContext();) { + TextMessage message = queueContext.createTextMessage(); + + message.setStringProperty("command", "neworder"); + message.setIntProperty("orderID", orderID); + message.setBooleanProperty("twoPhase", twoPhase); + message.setText("neworder: orderID=" + orderID + " runtimeMode=EJB twoPhase=" + twoPhase); + message.setLongProperty("publishTime", System.currentTimeMillis()); + + queueContext.createProducer().send(tradeBrokerQueue, message); + + } catch (Exception e) { + throw new EJBException(e.getMessage(), e); // pass the exception + } + } + + @Override + public OrderDataBean completeOrder(Integer orderID, boolean twoPhase) throws Exception { + OrderDataBean order = entityManager.find(OrderDataBean.class, orderID); + + if (order == null) { + System.out.println("error"); + throw new EJBException("Error: attempt to complete Order that is null\n" + order); + } + + order.getQuote(); + + if (order.isCompleted()) { + throw new EJBException("Error: attempt to complete Order that is already completed\n" + order); + } + + AccountDataBean account = order.getAccount(); + QuoteDataBean quote = order.getQuote(); + HoldingDataBean holding = order.getHolding(); + BigDecimal price = order.getPrice(); + double quantity = order.getQuantity(); + + if (order.isBuy()) { + /* + * Complete a Buy operation - create a new Holding for the Account - + * deduct the Order cost from the Account balance + */ + + HoldingDataBean newHolding = createHolding(account, quote, quantity, price); + order.setHolding(newHolding); + order.setOrderStatus("closed"); + order.setCompletionDate(new java.sql.Timestamp(System.currentTimeMillis())); + updateQuotePriceVolume(quote.getSymbol(), TradeConfig.getRandomPriceChangeFactor(), quantity); + } + + if (order.isSell()) { + /* + * Complete a Sell operation - remove the Holding from the Account - + * deposit the Order proceeds to the Account balance + */ + if (holding == null) { + Log.debug("TradeSLSBBean:completeOrder -- Unable to sell order " + order.getOrderID() + " holding already sold"); + order.cancel(); + //throw new EJBException("TradeSLSBBean:completeOrder -- Unable to sell order " + order.getOrderID() + " holding already sold"); + } else { + entityManager.remove(holding); + order.setHolding(null); + order.setOrderStatus("closed"); + order.setCompletionDate(new java.sql.Timestamp(System.currentTimeMillis())); + updateQuotePriceVolume(quote.getSymbol(), TradeConfig.getRandomPriceChangeFactor(), quantity); + } + } + + Log.trace("TradeSLSBBean:completeOrder--> Completed Order " + order.getOrderID() + "\n\t Order info: " + order + "\n\t Account info: " + account + + "\n\t Quote info: " + quote + "\n\t Holding info: " + holding); + + return order; + } + + @Override + public Future completeOrderAsync(Integer orderID, boolean twoPhase) throws Exception { + asyncEJBOrderSubmitter.submitOrder(orderID, twoPhase); + return null; + } + + @Override + public void cancelOrder(Integer orderID, boolean twoPhase) { + OrderDataBean order = entityManager.find(OrderDataBean.class, orderID); + order.cancel(); + } + + @Override + public void orderCompleted(String userID, Integer orderID) { + throw new UnsupportedOperationException("TradeSLSBBean:orderCompleted method not supported"); + } + + @Override + public Collection getOrders(String userID) { + AccountProfileDataBean profile = entityManager.find(AccountProfileDataBean.class, userID); + AccountDataBean account = profile.getAccount(); + return account.getOrders(); + } + + @Override + public Collection getClosedOrders(String userID) { + + try { + /* I want to do a CriteriaUpdate here, but there are issues with JBoss/Hibernate */ + CriteriaBuilder criteriaBuilder = entityManager.getCriteriaBuilder(); + CriteriaQuery criteriaQuery = criteriaBuilder.createQuery(OrderDataBean.class); + Root orders = criteriaQuery.from(OrderDataBean.class); + criteriaQuery.select(orders); + criteriaQuery.where( + criteriaBuilder.equal(orders.get("orderStatus"), + criteriaBuilder.parameter(String.class, "p_status")), + criteriaBuilder.equal(orders.get("account").get("profile").get("userID"), + criteriaBuilder.parameter(String.class, "p_userid"))); + + TypedQuery q = entityManager.createQuery(criteriaQuery); + q.setParameter("p_status", "closed"); + q.setParameter("p_userid", userID); + List results = q.getResultList(); + + Iterator itr = results.iterator(); + // Spin through the orders to remove or mark completed + while (itr.hasNext()) { + OrderDataBean order = itr.next(); + // TODO: Investigate ConncurrentModification Exceptions + if (TradeConfig.getLongRun()) { + //Added this for Longruns (to prevent orderejb growth) + entityManager.remove(order); + } + else { + order.setOrderStatus("completed"); + } + } + + return results; + } catch (Exception e) { + Log.error("TradeSLSBBean.getClosedOrders", e); + throw new EJBException("TradeSLSBBean.getClosedOrders - error", e); + } + } + + @Override + public QuoteDataBean createQuote(String symbol, String companyName, BigDecimal price) { + try { + QuoteDataBean quote = new QuoteDataBean(symbol, companyName, 0, price, price, price, price, 0); + entityManager.persist(quote); + + Log.trace("TradeSLSBBean:createQuote-->" + quote); + + return quote; + } catch (Exception e) { + Log.error("TradeSLSBBean:createQuote -- exception creating Quote", e); + throw new EJBException(e); + } + } + + @Override + public QuoteDataBean getQuote(String symbol) { + return entityManager.find(QuoteDataBean.class, symbol); + } + + @Override + public Collection getAllQuotes() { + TypedQuery query = entityManager.createNamedQuery("quoteejb.allQuotes", QuoteDataBean.class); + return query.getResultList(); + } + + @Override + public QuoteDataBean updateQuotePriceVolume(String symbol, BigDecimal changeFactor, double sharesTraded) { + if (!TradeConfig.getUpdateQuotePrices()) { + return new QuoteDataBean(); + } + + Log.trace("TradeSLSBBean:updateQuote", symbol, changeFactor); + + TypedQuery q = entityManager.createNamedQuery("quoteejb.quoteForUpdate", QuoteDataBean.class); + q.setParameter(1, symbol); + QuoteDataBean quote = q.getSingleResult(); + + BigDecimal oldPrice = quote.getPrice(); + BigDecimal openPrice = quote.getOpen(); + + if (oldPrice.equals(TradeConfig.PENNY_STOCK_PRICE)) { + changeFactor = TradeConfig.PENNY_STOCK_RECOVERY_MIRACLE_MULTIPLIER; + } else if (oldPrice.compareTo(TradeConfig.MAXIMUM_STOCK_PRICE) > 0) { + changeFactor = TradeConfig.MAXIMUM_STOCK_SPLIT_MULTIPLIER; + } + + BigDecimal newPrice = changeFactor.multiply(oldPrice).setScale(2, BigDecimal.ROUND_HALF_UP); + + quote.setPrice(newPrice); + quote.setChange(newPrice.subtract(openPrice).doubleValue()); + quote.setVolume(quote.getVolume() + sharesTraded); + entityManager.merge(quote); + + if (TradeConfig.getPublishQuotePriceChange()) { + publishQuotePriceChange(quote, oldPrice, changeFactor, sharesTraded); + } + + recentQuotePriceChangeList.add(quote); + + return quote; + } + + @Override + public Collection<@NotNull HoldingDataBean> getHoldings(String userID) { + CriteriaBuilder criteriaBuilder = entityManager.getCriteriaBuilder(); + CriteriaQuery criteriaQuery = criteriaBuilder.createQuery(HoldingDataBean.class); + Root holdings = criteriaQuery.from(HoldingDataBean.class); + criteriaQuery.where( + criteriaBuilder.equal(holdings.get("account").get("profile").get("userID"), + criteriaBuilder.parameter(String.class, "p_userid"))); + criteriaQuery.select(holdings); + + TypedQuery typedQuery = entityManager.createQuery(criteriaQuery); + typedQuery.setParameter("p_userid", userID); + return typedQuery.getResultList(); + } + + @Override + public HoldingDataBean getHolding(Integer holdingID) { + return entityManager.find(HoldingDataBean.class, holdingID); + } + + @Override + public AccountDataBean getAccountData(String userID) { + AccountProfileDataBean profile = entityManager.find(AccountProfileDataBean.class, userID); + AccountDataBean account = profile.getAccount(); + + // Added to populate transient field for account + account.setProfileID(profile.getUserID()); + + return account; + } + + @Override + public AccountProfileDataBean getAccountProfileData(String userID) { + return entityManager.find(AccountProfileDataBean.class, userID); + } + + @Override + public AccountProfileDataBean updateAccountProfile(AccountProfileDataBean profileData) { + AccountProfileDataBean temp = entityManager.find(AccountProfileDataBean.class, profileData.getUserID()); + temp.setAddress(profileData.getAddress()); + temp.setPassword(profileData.getPassword()); + temp.setFullName(profileData.getFullName()); + temp.setCreditCard(profileData.getCreditCard()); + temp.setEmail(profileData.getEmail()); + + entityManager.merge(temp); + + return temp; + } + + @Override + public AccountDataBean login(String userID, String password) throws RollbackException { + AccountProfileDataBean profile = entityManager.find(AccountProfileDataBean.class, userID); + if (profile == null) { + throw new EJBException("No such user: " + userID); + } + + AccountDataBean account = profile.getAccount(); + account.login(password); + + Log.trace("TradeSLSBBean:login(" + userID + "," + password + ") success" + account); + + return account; + } + + @Override + public void logout(String userID) { + AccountProfileDataBean profile = entityManager.find(AccountProfileDataBean.class, userID); + AccountDataBean account = profile.getAccount(); + account.logout(); + + Log.trace("TradeSLSBBean:logout(" + userID + ") success"); + } + + @Override + public AccountDataBean register(String userID, String password, String fullname, String address, String email, String creditcard, BigDecimal openBalance) { + AccountDataBean account = null; + AccountProfileDataBean profile = null; + + // Check to see if a profile with the desired userID already exists + profile = entityManager.find(AccountProfileDataBean.class, userID); + + if (profile != null) { + Log.error("Failed to register new Account - AccountProfile with userID(" + userID + ") already exists"); + return null; + } else { + profile = new AccountProfileDataBean(userID, password, fullname, address, email, creditcard); + account = new AccountDataBean(0, 0, null, new Timestamp(System.currentTimeMillis()), openBalance, openBalance, userID); + + profile.setAccount(account); + account.setProfile(profile); + + entityManager.persist(profile); + entityManager.persist(account); + } + + return account; + } + + @TransactionAttribute(TransactionAttributeType.REQUIRES_NEW) + public void publishQuotePriceChange(QuoteDataBean quote, BigDecimal oldPrice, BigDecimal changeFactor, double sharesTraded) { + if (!TradeConfig.getPublishQuotePriceChange()) { + return; + } + + try (JMSContext topicContext = topicConnectionFactory.createContext();) { + TextMessage message = topicContext.createTextMessage(); + + message.setStringProperty("command", "updateQuote"); + message.setStringProperty("symbol", quote.getSymbol()); + message.setStringProperty("company", quote.getCompanyName()); + message.setStringProperty("price", quote.getPrice().toString()); + message.setStringProperty("oldPrice", oldPrice.toString()); + message.setStringProperty("open", quote.getOpen().toString()); + message.setStringProperty("low", quote.getLow().toString()); + message.setStringProperty("high", quote.getHigh().toString()); + message.setDoubleProperty("volume", quote.getVolume()); + message.setStringProperty("changeFactor", changeFactor.toString()); + message.setDoubleProperty("sharesTraded", sharesTraded); + message.setLongProperty("publishTime", System.currentTimeMillis()); + message.setText("Update Stock price for " + quote.getSymbol() + " old price = " + oldPrice + " new price = " + quote.getPrice()); + + topicContext.createProducer().send(tradeStreamerTopic, message); + } catch (Exception e) { + throw new EJBException(e.getMessage(), e); // pass the exception + } + } + + public OrderDataBean createOrder(AccountDataBean account, QuoteDataBean quote, HoldingDataBean holding, String orderType, double quantity) { + OrderDataBean order; + + try { + order = new OrderDataBean(orderType, "open", new Timestamp(System.currentTimeMillis()), null, quantity, quote.getPrice().setScale( + FinancialUtils.SCALE, FinancialUtils.ROUND), TradeConfig.getOrderFee(orderType), account, quote, holding); + entityManager.persist(order); + } catch (Exception e) { + Log.error("TradeSLSBBean:createOrder -- failed to create Order. The stock/quote may not exist in the database.", e); + throw new EJBException("TradeSLSBBean:createOrder -- failed to create Order. Check that the symbol exists in the database.", e); + } + return order; + } + + private HoldingDataBean createHolding(AccountDataBean account, QuoteDataBean quote, double quantity, BigDecimal purchasePrice) throws Exception { + HoldingDataBean newHolding = new HoldingDataBean(quantity, purchasePrice, new Timestamp(System.currentTimeMillis()), account, quote); + entityManager.persist(newHolding); + return newHolding; + } + + @Override + public double investmentReturn(double investment, double NetValue) throws Exception { + double diff = NetValue - investment; + double ir = diff / investment; + return ir; + } + + @Override + public QuoteDataBean pingTwoPhase(String symbol) throws Exception { + QuoteDataBean quoteData = null; + + try (JMSContext queueContext = queueConnectionFactory.createContext();) { + // Get a Quote and send a JMS message in a 2-phase commit + quoteData = entityManager.find(QuoteDataBean.class, symbol); + + double sharesTraded = (Math.random() * 100) + 1 ; + BigDecimal oldPrice = quoteData.getPrice(); + BigDecimal openPrice = quoteData.getOpen(); + BigDecimal changeFactor = new BigDecimal (Math.random() * 100); + + BigDecimal newPrice = changeFactor.multiply(oldPrice).setScale(2, BigDecimal.ROUND_HALF_UP); + + quoteData.setPrice(newPrice); + quoteData.setChange(newPrice.subtract(openPrice).doubleValue()); + quoteData.setVolume(quoteData.getVolume() + sharesTraded); + entityManager.merge(quoteData); + + TextMessage message = queueContext.createTextMessage(); + + message.setStringProperty("command", "ping"); + message.setLongProperty("publishTime", System.currentTimeMillis()); + message.setText("Ping message for queue java:comp/env/jms/TradeBrokerQueue sent from TradeSLSBBean:pingTwoPhase at " + new java.util.Date()); + queueContext.createProducer().send(tradeBrokerQueue, message); + } catch (Exception e) { + Log.error("TradeSLSBBean:pingTwoPhase -- exception caught", e); + } + + return quoteData; + } + + class quotePriceComparator implements Comparator { + @Override + public int compare(QuoteDataBean quote1, QuoteDataBean quote2) { + double change1 = quote1.getChange(); + double change2 = quote2.getChange(); + return new Double(change2).compareTo(change1); + } + } + + @Override + public int getImpl() { + return TradeConfig.EJB3; + } + + @Override + public void setInSession(boolean inSession) { + throw new UnsupportedOperationException("TradeSLSBBean::setInGlobalTxn not supported"); + } +} diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/impl/session2direct/DirectSLSBBean.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/impl/session2direct/DirectSLSBBean.java new file mode 100644 index 00000000..b6cabe9b --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/impl/session2direct/DirectSLSBBean.java @@ -0,0 +1,237 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.impl.session2direct; + +import java.math.BigDecimal; +import java.util.Collection; +import java.util.concurrent.Future; + +import javax.ejb.Stateless; +import javax.ejb.TransactionAttribute; +import javax.ejb.TransactionAttributeType; +import javax.ejb.TransactionManagement; +import javax.ejb.TransactionManagementType; +import javax.inject.Inject; +import javax.validation.constraints.NotNull; + +import com.ibm.websphere.samples.daytrader.interfaces.RuntimeMode; +import com.ibm.websphere.samples.daytrader.interfaces.Trace; +import com.ibm.websphere.samples.daytrader.interfaces.TradeJDBC; +import com.ibm.websphere.samples.daytrader.interfaces.TradeServices; +import com.ibm.websphere.samples.daytrader.interfaces.TradeSession2Direct; +import com.ibm.websphere.samples.daytrader.beans.MarketSummaryDataBean; +import com.ibm.websphere.samples.daytrader.entities.AccountDataBean; +import com.ibm.websphere.samples.daytrader.entities.AccountProfileDataBean; +import com.ibm.websphere.samples.daytrader.entities.HoldingDataBean; +import com.ibm.websphere.samples.daytrader.entities.OrderDataBean; +import com.ibm.websphere.samples.daytrader.entities.QuoteDataBean; +import com.ibm.websphere.samples.daytrader.impl.ejb3.AsyncScheduledOrderSubmitter; +import com.ibm.websphere.samples.daytrader.util.TradeConfig; + +@Stateless +@TradeSession2Direct +@RuntimeMode("Session to Direct") +@Trace +@TransactionAttribute(TransactionAttributeType.REQUIRED) +@TransactionManagement(TransactionManagementType.CONTAINER) +public class DirectSLSBBean implements TradeServices { + + @Inject + @TradeJDBC + TradeServices tradeDirect; + + @Inject + AsyncScheduledOrderSubmitter asyncEJBOrderSubmitter; + + @Override + public int getImpl() { + return TradeConfig.SESSION_TO_DIRECT; + } + + @Override + public MarketSummaryDataBean getMarketSummary() throws Exception { + tradeDirect.setInSession(true); + return tradeDirect.getMarketSummary(); + } + + @Override + public OrderDataBean createOrder(AccountDataBean account, QuoteDataBean quote, HoldingDataBean holding, + String orderType, double quantity) throws Exception { + tradeDirect.setInSession(true); + return tradeDirect.createOrder(account, quote, holding, orderType, quantity); + } + + @Override + @NotNull + public OrderDataBean buy(String userID, String symbol, double quantity, int orderProcessingMode) throws Exception { + tradeDirect.setInSession(true); + OrderDataBean orderdata = tradeDirect.buy(userID, symbol, quantity, orderProcessingMode); + + if (orderProcessingMode == TradeConfig.ASYNCH) { + this.completeOrderAsync(orderdata.getOrderID(), false); + } + + return orderdata; + } + + @Override + @NotNull + public OrderDataBean sell(String userID, Integer holdingID, int orderProcessingMode) throws Exception { + tradeDirect.setInSession(true); + OrderDataBean orderdata = tradeDirect.sell(userID, holdingID, orderProcessingMode); + + if (orderProcessingMode == TradeConfig.ASYNCH) { + this.completeOrderAsync(orderdata.getOrderID(), false); + } + return orderdata; + + } + + @Override + public void queueOrder(Integer orderID, boolean twoPhase) throws Exception { + tradeDirect.setInSession(true); + tradeDirect.queueOrder(orderID, twoPhase); + + } + + @Override + public OrderDataBean completeOrder(Integer orderID, boolean twoPhase) throws Exception { + tradeDirect.setInSession(true); + return tradeDirect.completeOrder(orderID, twoPhase); + } + + @Override + public Future completeOrderAsync(Integer orderID, boolean twoPhase) throws Exception { + asyncEJBOrderSubmitter.submitOrder(orderID, twoPhase); + return null; + } + + @Override + public void cancelOrder(Integer orderID, boolean twoPhase) throws Exception { + tradeDirect.setInSession(true); + tradeDirect.cancelOrder(orderID, twoPhase); + + } + + @Override + public void orderCompleted(String userID, Integer orderID) throws Exception { + tradeDirect.setInSession(true); + tradeDirect.orderCompleted(userID, orderID); + + } + + @Override + public Collection getOrders(String userID) throws Exception { + tradeDirect.setInSession(true); + return tradeDirect.getOrders(userID); + } + + @Override + public Collection getClosedOrders(String userID) throws Exception { + tradeDirect.setInSession(true); + return tradeDirect.getClosedOrders(userID); + } + + @Override + public QuoteDataBean createQuote(String symbol, String companyName, BigDecimal price) throws Exception { + tradeDirect.setInSession(true); + return tradeDirect.createQuote(symbol, companyName, price); + } + + @Override + public QuoteDataBean getQuote(String symbol) throws Exception { + tradeDirect.setInSession(true); + return tradeDirect.getQuote(symbol); + } + + @Override + public Collection getAllQuotes() throws Exception { + tradeDirect.setInSession(true); + return tradeDirect.getAllQuotes(); + } + + @Override + public QuoteDataBean updateQuotePriceVolume(String symbol, BigDecimal newPrice, double sharesTraded) + throws Exception { + tradeDirect.setInSession(true); + return tradeDirect.updateQuotePriceVolume(symbol, newPrice, sharesTraded); + } + + @Override + public Collection getHoldings(String userID) throws Exception { + tradeDirect.setInSession(true); + return tradeDirect.getHoldings(userID); + } + + @Override + public HoldingDataBean getHolding(Integer holdingID) throws Exception { + tradeDirect.setInSession(true); + return tradeDirect.getHolding(holdingID); + } + + @Override + public AccountDataBean getAccountData(String userID) throws Exception { + tradeDirect.setInSession(true); + return tradeDirect.getAccountData(userID); + } + + @Override + public AccountProfileDataBean getAccountProfileData(String userID) throws Exception { + tradeDirect.setInSession(true); + return tradeDirect.getAccountProfileData(userID); + } + + @Override + public AccountProfileDataBean updateAccountProfile(AccountProfileDataBean profileData) throws Exception { + tradeDirect.setInSession(true); + return tradeDirect.updateAccountProfile(profileData); + } + + @Override + public AccountDataBean login(String userID, String password) throws Exception { + tradeDirect.setInSession(true); + return tradeDirect.login(userID, password); + } + + @Override + public void logout(String userID) throws Exception { + tradeDirect.setInSession(true); + tradeDirect.logout(userID); + } + + @Override + public AccountDataBean register(String userID, String password, String fullname, String address, String email, + String creditcard, BigDecimal openBalance) throws Exception { + tradeDirect.setInSession(true); + return tradeDirect.register(userID, password, fullname, address, email, creditcard, openBalance); + } + + @Override + public QuoteDataBean pingTwoPhase(String symbol) throws Exception { + throw new UnsupportedOperationException(); + } + + @Override + public double investmentReturn(double rnd1, double rnd2) throws Exception { + throw new UnsupportedOperationException(); + } + + + @Override + public void setInSession(boolean inSession) { + throw new UnsupportedOperationException("DirectSLSBBean::setInGlobalTxn not supported"); + } +} \ No newline at end of file diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/interfaces/MarketSummaryUpdate.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/interfaces/MarketSummaryUpdate.java new file mode 100644 index 00000000..16ddc303 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/interfaces/MarketSummaryUpdate.java @@ -0,0 +1,27 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.interfaces; + +import java.lang.annotation.ElementType; +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; +import java.lang.annotation.Target; +import javax.inject.Qualifier; + +@Qualifier +@Retention(RetentionPolicy.RUNTIME) +@Target({ElementType.METHOD, ElementType.FIELD, ElementType.PARAMETER, ElementType.TYPE}) +public @interface MarketSummaryUpdate {} \ No newline at end of file diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/interfaces/QuotePriceChange.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/interfaces/QuotePriceChange.java new file mode 100644 index 00000000..936097b4 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/interfaces/QuotePriceChange.java @@ -0,0 +1,31 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.interfaces; + +import java.lang.annotation.ElementType; +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; +import java.lang.annotation.Target; +import javax.inject.Qualifier; + +@Qualifier +@Retention(RetentionPolicy.RUNTIME) +@Target({ElementType.METHOD, ElementType.FIELD, ElementType.PARAMETER, ElementType.TYPE}) +public @interface QuotePriceChange { +} + + + diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/interfaces/RuntimeMode.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/interfaces/RuntimeMode.java new file mode 100644 index 00000000..9c55d709 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/interfaces/RuntimeMode.java @@ -0,0 +1,33 @@ +/******************************************************************************* +* Copyright (c) 2017 IBM Corp. +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*******************************************************************************/ +package com.ibm.websphere.samples.daytrader.interfaces; + +import java.lang.annotation.ElementType; +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; +import java.lang.annotation.Target; +import javax.inject.Qualifier; + +@Qualifier +@Retention(RetentionPolicy.RUNTIME) +@Target({ElementType.TYPE, ElementType.METHOD, + ElementType.FIELD, ElementType.PARAMETER}) +public @interface RuntimeMode { + /** + * Default to jaxrs client impl + */ + String value() default "Full EJB3"; +} diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/interfaces/Trace.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/interfaces/Trace.java new file mode 100644 index 00000000..1c24008b --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/interfaces/Trace.java @@ -0,0 +1,33 @@ +/** + * (C) Copyright IBM Corporation 2019. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.interfaces; + +import javax.interceptor.InterceptorBinding; +import java.lang.annotation.Retention; +import java.lang.annotation.Target; + +import static java.lang.annotation.ElementType.METHOD; +import static java.lang.annotation.ElementType.TYPE; +import static java.lang.annotation.RetentionPolicy.RUNTIME; + +import java.lang.annotation.Inherited; + +@Inherited +@InterceptorBinding +@Target({ TYPE, METHOD }) +@Retention(RUNTIME) +public @interface Trace { +} diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/interfaces/TradeDB.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/interfaces/TradeDB.java new file mode 100644 index 00000000..ee07a020 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/interfaces/TradeDB.java @@ -0,0 +1,44 @@ +/** + * (C) Copyright IBM Corporation 2019. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.interfaces; + +import com.ibm.websphere.samples.daytrader.beans.RunStatsDataBean; + +public interface TradeDB { + + /** + * Reset the TradeData by - removing all newly registered users by scenario + * servlet (i.e. users with userID's beginning with "ru:") * - removing all + * buy/sell order pairs - setting logoutCount = loginCount + * + * return statistics for this benchmark run + */ + RunStatsDataBean resetTrade(boolean deleteAll) throws Exception; + + /** + * Get the Database Product Name + * + * return DB Product Name String + */ + String checkDBProductName() throws Exception; + + /** + * Get the impl for the TradeService + * + * return int matching the implementation + */ + +} diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/interfaces/TradeEJB.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/interfaces/TradeEJB.java new file mode 100644 index 00000000..13330044 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/interfaces/TradeEJB.java @@ -0,0 +1,32 @@ +/** + * (C) Copyright IBM Corporation 2019. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.interfaces; + +import java.lang.annotation.Retention; +import java.lang.annotation.Target; + +import javax.inject.Qualifier; + +import static java.lang.annotation.ElementType.FIELD; +import static java.lang.annotation.ElementType.METHOD; +import static java.lang.annotation.ElementType.PARAMETER; +import static java.lang.annotation.ElementType.TYPE; +import static java.lang.annotation.RetentionPolicy.RUNTIME; + +@Qualifier +@Retention(RUNTIME) +@Target({TYPE, METHOD, FIELD, PARAMETER}) +public @interface TradeEJB {} \ No newline at end of file diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/interfaces/TradeJDBC.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/interfaces/TradeJDBC.java new file mode 100644 index 00000000..57086a49 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/interfaces/TradeJDBC.java @@ -0,0 +1,32 @@ +/** + * (C) Copyright IBM Corporation 2019. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.interfaces; + +import java.lang.annotation.Retention; +import java.lang.annotation.Target; + +import javax.inject.Qualifier; + +import static java.lang.annotation.ElementType.FIELD; +import static java.lang.annotation.ElementType.METHOD; +import static java.lang.annotation.ElementType.PARAMETER; +import static java.lang.annotation.ElementType.TYPE; +import static java.lang.annotation.RetentionPolicy.RUNTIME; + +@Qualifier +@Retention(RUNTIME) +@Target({TYPE, METHOD, FIELD, PARAMETER}) +public @interface TradeJDBC {} diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/interfaces/TradeServices.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/interfaces/TradeServices.java new file mode 100644 index 00000000..dc91be1d --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/interfaces/TradeServices.java @@ -0,0 +1,338 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.interfaces; + +import java.math.BigDecimal; +import java.util.Collection; +import java.util.concurrent.Future; + +import com.ibm.websphere.samples.daytrader.beans.MarketSummaryDataBean; +import com.ibm.websphere.samples.daytrader.entities.AccountDataBean; +import com.ibm.websphere.samples.daytrader.entities.AccountProfileDataBean; +import com.ibm.websphere.samples.daytrader.entities.HoldingDataBean; +import com.ibm.websphere.samples.daytrader.entities.OrderDataBean; +import com.ibm.websphere.samples.daytrader.entities.QuoteDataBean; + +/** + * TradeServices interface specifies the business methods provided by the Trade + * online broker application. These business methods represent the features and + * operations that can be performed by customers of the brokerage such as login, + * logout, get a stock quote, buy or sell a stock, etc. This interface is + * implemented by {@link Trade} providing an EJB implementation of these + * business methods and also by {@link TradeDirect} providing a JDBC + * implementation. + * + * @see TradeDirect + * @see TradeSLSB + * + */ + +public interface TradeServices { + + /** + * Compute and return a snapshot of the current market conditions This + * includes the TSIA - an index of the price of the top 100 Trade stock + * quotes The openTSIA ( the index at the open) The volume of shares traded, + * Top Stocks gain and loss + * + * @return A snapshot of the current market summary + */ + MarketSummaryDataBean getMarketSummary() throws Exception; + + /** + * Create an order (buy or sell) + * + * @param accoount + * the accountdatabean + * @param quote + * the quptedatabean + * @param holding + * the holdingdatabean + * @param orderType + * buy or sell + * @param quantity + * quantity + * @return Collection OrderDataBeans providing detailed order information + */ + OrderDataBean createOrder(AccountDataBean account, QuoteDataBean quote, HoldingDataBean holding, String orderType, + double quantity) throws Exception; + + /** + * Purchase a stock and create a new holding for the given user. Given a + * stock symbol and quantity to purchase, retrieve the current quote price, + * debit the user's account balance, and add holdings to user's portfolio. + * buy/sell are asynchronous, using J2EE messaging, A new order is created + * and submitted for processing to the TradeBroker + * + * @param userID + * the customer requesting the stock purchase + * @param symbol + * the symbol of the stock being purchased + * @param quantity + * the quantity of shares to purchase + * @return OrderDataBean providing the status of the newly created buy order + */ + + OrderDataBean buy(String userID, String symbol, double quantity, int orderProcessingMode) throws Exception; + + /** + * Sell a stock holding and removed the holding for the given user. Given a + * Holding, retrieve current quote, credit user's account, and reduce + * holdings in user's portfolio. + * + * @param userID + * the customer requesting the sell + * @param holdingID + * the users holding to be sold + * @return OrderDataBean providing the status of the newly created sell + * order + */ + OrderDataBean sell(String userID, Integer holdingID, int orderProcessingMode) throws Exception; + + /** + * Queue the Order identified by orderID to be processed + * + * Orders are submitted through JMS to a Trading Broker and completed + * asynchronously. This method queues the order for processing + * + * The boolean twoPhase specifies to the server implementation whether or + * not the method is to participate in a global transaction + * + * @param orderID + * the Order being queued for processing + * @return OrderDataBean providing the status of the completed order + */ + void queueOrder(Integer orderID, boolean twoPhase) throws Exception; + + /** + * Complete the Order identified by orderID. This method completes + * the order For a buy, the stock is purchased creating a holding and the + * users account is debited For a sell, the stock holding is removed and the + * users account is credited with the proceeds + * + * The boolean twoPhase specifies to the server implementation whether or + * not the method is to participate in a global transaction + * + * @param orderID + * the Order to complete + * @return OrderDataBean providing the status of the completed order + */ + OrderDataBean completeOrder(Integer orderID, boolean twoPhase) throws Exception; + + /** + * Complete the Order identefied by orderID Orders are completed + * asynchronously. This method completes + * the order For a buy, the stock is purchased creating a holding and the + * users account is debited For a sell, the stock holding is removed and the + * users account is credited with the proceeds + * + * The boolean twoPhase specifies to the server implementation whether or + * not the method is to participate in a global transaction + * + * @param orderID + * the Order to complete + * @return OrderDataBean providing the status of the completed order + */ + Future completeOrderAsync(Integer orderID, boolean twoPhase) throws Exception; + + /** + * Cancel the Order identefied by orderID + * + * The boolean twoPhase specifies to the server implementation whether or + * not the method is to participate in a global transaction + * + * @param orderID + * the Order to complete + * @return OrderDataBean providing the status of the completed order + */ + void cancelOrder(Integer orderID, boolean twoPhase) throws Exception; + + /** + * Signify an order has been completed for the given userID + * + * @param userID + * the user for which an order has completed + * @param orderID + * the order which has completed + * + */ + void orderCompleted(String userID, Integer orderID) throws Exception; + + /** + * Get the collection of all orders for a given account + * + * @param userID + * the customer account to retrieve orders for + * @return Collection OrderDataBeans providing detailed order information + */ + Collection getOrders(String userID) throws Exception; + + /** + * Get the collection of completed orders for a given account that need to + * be alerted to the user + * + * @param userID + * the customer account to retrieve orders for + * @return Collection OrderDataBeans providing detailed order information + */ + Collection getClosedOrders(String userID) throws Exception; + + /** + * Given a market symbol, price, and details, create and return a new + * {@link QuoteDataBean} + * + * @param symbol + * the symbol of the stock + * @param price + * the current stock price + * @param details + * a short description of the stock or company + * @return a new QuoteDataBean or null if Quote could not be created + */ + QuoteDataBean createQuote(String symbol, String companyName, BigDecimal price) throws Exception; + + /** + * Return a {@link QuoteDataBean} describing a current quote for the given + * stock symbol + * + * @param symbol + * the stock symbol to retrieve the current Quote + * @return the QuoteDataBean + */ + QuoteDataBean getQuote(String symbol) throws Exception; + + /** + * Return a {@link java.util.Collection} of {@link QuoteDataBean} describing + * all current quotes + * + * @return A collection of QuoteDataBean + */ + Collection getAllQuotes() throws Exception; + + /** + * Update the stock quote price and volume for the specified stock symbol + * + * @param symbol + * for stock quote to update + * @param price + * the updated quote price + * @return the QuoteDataBean describing the stock + */ + QuoteDataBean updateQuotePriceVolume(String symbol, BigDecimal newPrice, double sharesTraded) throws Exception; + + /** + * Return the portfolio of stock holdings for the specified customer as a + * collection of HoldingDataBeans + * + * @param userID + * the customer requesting the portfolio + * @return Collection of the users portfolio of stock holdings + */ + Collection getHoldings(String userID) throws Exception; + + /** + * Return a specific user stock holding identifed by the holdingID + * + * @param holdingID + * the holdingID to return + * @return a HoldingDataBean describing the holding + */ + HoldingDataBean getHolding(Integer holdingID) throws Exception; + + /** + * Return an AccountDataBean object for userID describing the account + * + * @param userID + * the account userID to lookup + * @return User account data in AccountDataBean + */ + AccountDataBean getAccountData(String userID) throws Exception; + + /** + * Return an AccountProfileDataBean for userID providing the users profile + * + * @param userID + * the account userID to lookup + * @param User + * account profile data in AccountProfileDataBean + */ + AccountProfileDataBean getAccountProfileData(String userID) throws Exception; + + /** + * Update userID's account profile information using the provided + * AccountProfileDataBean object + * + * @param userID + * the account userID to lookup + * @param User + * account profile data in AccountProfileDataBean + */ + AccountProfileDataBean updateAccountProfile(AccountProfileDataBean profileData) throws Exception; + + /** + * Attempt to authenticate and login a user with the given password + * + * @param userID + * the customer to login + * @param password + * the password entered by the customer for authentication + * @return User account data in AccountDataBean + */ + AccountDataBean login(String userID, String password) throws Exception; + + /** + * Logout the given user + * + * @param userID + * the customer to logout + * @return the login status + */ + + void logout(String userID) throws Exception; + + /** + * Register a new Trade customer. Create a new user profile, user registry + * entry, account with initial balance, and empty portfolio. + * + * @param userID + * the new customer to register + * @param password + * the customers password + * @param fullname + * the customers fullname + * @param address + * the customers street address + * @param email + * the customers email address + * @param creditcard + * the customers creditcard number + * @param initialBalance + * the amount to charge to the customers credit to open the + * account and set the initial balance + * @return the userID if successful, null otherwise + */ + AccountDataBean register(String userID, String password, String fullname, String address, String email, String creditcard, BigDecimal openBalance) + throws Exception; + + + int getImpl(); + + QuoteDataBean pingTwoPhase(String symbol) throws Exception; + + double investmentReturn(double rnd1, double rnd2) throws Exception; + + void setInSession(boolean inSession); +} diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/interfaces/TradeSession2Direct.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/interfaces/TradeSession2Direct.java new file mode 100644 index 00000000..e39b6842 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/interfaces/TradeSession2Direct.java @@ -0,0 +1,32 @@ +/** + * (C) Copyright IBM Corporation 2019. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.interfaces; + +import java.lang.annotation.Retention; +import java.lang.annotation.Target; + +import javax.inject.Qualifier; + +import static java.lang.annotation.ElementType.FIELD; +import static java.lang.annotation.ElementType.METHOD; +import static java.lang.annotation.ElementType.PARAMETER; +import static java.lang.annotation.ElementType.TYPE; +import static java.lang.annotation.RetentionPolicy.RUNTIME; + +@Qualifier +@Retention(RUNTIME) +@Target({TYPE, METHOD, FIELD, PARAMETER}) +public @interface TradeSession2Direct {} diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/jaxrs/BroadcastResource.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/jaxrs/BroadcastResource.java new file mode 100644 index 00000000..3b280fde --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/jaxrs/BroadcastResource.java @@ -0,0 +1,70 @@ +/** + * (C) Copyright IBM Corporation 2019. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.jaxrs; + +import java.util.List; + +import javax.annotation.Priority; +import javax.enterprise.context.ApplicationScoped; +import javax.enterprise.event.ObservesAsync; +import javax.inject.Inject; +import javax.interceptor.Interceptor; +import javax.ws.rs.GET; +import javax.ws.rs.Path; +import javax.ws.rs.Produces; +import javax.ws.rs.core.Context; +import javax.ws.rs.core.MediaType; +import javax.ws.rs.sse.OutboundSseEvent.Builder; +import javax.ws.rs.sse.Sse; +import javax.ws.rs.sse.SseBroadcaster; +import javax.ws.rs.sse.SseEventSink; + +import com.ibm.websphere.samples.daytrader.interfaces.QuotePriceChange; +import com.ibm.websphere.samples.daytrader.util.RecentQuotePriceChangeList; + +@Path("broadcastevents") +@ApplicationScoped +public class BroadcastResource { + + private SseBroadcaster broadcaster; + private Builder builder; + + @Inject RecentQuotePriceChangeList recentQuotePriceChangeList; + + @Context + public void setSse(Sse sse) { + broadcaster = sse.newBroadcaster(); + builder = sse.newEventBuilder(); + } + + @GET + @Produces(MediaType.SERVER_SENT_EVENTS) + public void register(@Context SseEventSink eventSink) { + if (recentQuotePriceChangeList.isEmpty()) { + eventSink.send(builder.data(new String("welcome!")).build()); + } else { + eventSink.send(builder.mediaType(MediaType.APPLICATION_JSON_TYPE) + .data(List.class,recentQuotePriceChangeList.recentList()).build()); + } + broadcaster.register(eventSink); + } + + public void eventStreamCdi(@ObservesAsync @Priority(Interceptor.Priority.APPLICATION + 1) @QuotePriceChange String event) { + broadcaster.broadcast(builder.mediaType(MediaType.APPLICATION_JSON_TYPE) + .data(List.class,recentQuotePriceChangeList.recentList()).build()); + + } +} diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/jaxrs/JAXRSApplication.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/jaxrs/JAXRSApplication.java new file mode 100644 index 00000000..1266ede0 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/jaxrs/JAXRSApplication.java @@ -0,0 +1,28 @@ +/** + * (C) Copyright IBM Corporation 2019. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.jaxrs; + +import javax.ws.rs.ApplicationPath; +import javax.ws.rs.core.Application; + +/** + * + * @author hantsy + */ +@ApplicationPath("/rest") +public class JAXRSApplication extends Application { + +} \ No newline at end of file diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/jaxrs/QuoteResource.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/jaxrs/QuoteResource.java new file mode 100644 index 00000000..cf1d5a45 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/jaxrs/QuoteResource.java @@ -0,0 +1,84 @@ +/** + * (C) Copyright IBM Corporation 2019. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.jaxrs; + +import java.util.ArrayList; +import java.util.List; + +import javax.enterprise.context.RequestScoped; +import javax.enterprise.inject.Any; +import javax.enterprise.inject.Instance; +import javax.inject.Inject; +import javax.ws.rs.Consumes; +import javax.ws.rs.FormParam; +import javax.ws.rs.GET; +import javax.ws.rs.POST; +import javax.ws.rs.Path; +import javax.ws.rs.PathParam; +import javax.ws.rs.Produces; +import javax.ws.rs.core.MediaType; + +import com.ibm.websphere.samples.daytrader.entities.QuoteDataBean; +import com.ibm.websphere.samples.daytrader.interfaces.TradeServices; +import com.ibm.websphere.samples.daytrader.util.TradeConfig; +import com.ibm.websphere.samples.daytrader.util.TradeRunTimeModeLiteral; + +@Path("quotes") +@RequestScoped +public class QuoteResource { + + private TradeServices tradeService; + + + public QuoteResource() { + } + + @Inject + public QuoteResource(@Any Instance services) { + tradeService = services.select(new TradeRunTimeModeLiteral(TradeConfig.getRunTimeModeNames()[TradeConfig.getRunTimeMode()])).get(); + } + + @GET + @Produces(MediaType.APPLICATION_JSON) + @Path("/{symbols}") + public List quotesGet(@PathParam("symbols") String symbols) { + return getQuotes(symbols); + } + + @POST + @Consumes({ "application/x-www-form-urlencoded" }) + @Produces(MediaType.APPLICATION_JSON) + public List quotesPost(@FormParam("symbols") String symbols) { + return getQuotes(symbols); + } + + private List getQuotes(String symbols) { + ArrayList quoteDataBeans = new ArrayList(); + + try { + String[] symbolsSplit = symbols.split(","); + for (String symbol: symbolsSplit) { + QuoteDataBean quoteData = tradeService.getQuote(symbol); + quoteDataBeans.add(quoteData); + } + } catch (Exception e) { + e.printStackTrace(); + } + + return (List)quoteDataBeans; + } + +} diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/mdb/DTBroker3MDB.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/mdb/DTBroker3MDB.java new file mode 100644 index 00000000..a5024fc0 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/mdb/DTBroker3MDB.java @@ -0,0 +1,159 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.mdb; + +import javax.annotation.PostConstruct; +import javax.annotation.Resource; +import javax.ejb.ActivationConfigProperty; +import javax.ejb.MessageDriven; +import javax.ejb.MessageDrivenContext; +import javax.ejb.TransactionAttribute; +import javax.ejb.TransactionAttributeType; +import javax.ejb.TransactionManagement; +import javax.ejb.TransactionManagementType; +import javax.enterprise.inject.Any; +import javax.enterprise.inject.Instance; +import javax.inject.Inject; +import javax.jms.Message; +import javax.jms.MessageListener; +import javax.jms.TextMessage; + +import com.ibm.websphere.samples.daytrader.interfaces.Trace; +import com.ibm.websphere.samples.daytrader.interfaces.TradeServices; +import com.ibm.websphere.samples.daytrader.util.Log; +import com.ibm.websphere.samples.daytrader.util.MDBStats; +import com.ibm.websphere.samples.daytrader.util.TimerStat; +import com.ibm.websphere.samples.daytrader.util.TradeConfig; +import com.ibm.websphere.samples.daytrader.util.TradeRunTimeModeLiteral; + +// For Glassfish/Payara - take jms/ off of the destination name + +@TransactionAttribute(TransactionAttributeType.REQUIRED) +@TransactionManagement(TransactionManagementType.CONTAINER) +@MessageDriven(activationConfig = { @ActivationConfigProperty(propertyName = "acknowledgeMode", propertyValue = "Auto-acknowledge"), + @ActivationConfigProperty(propertyName = "destinationType", propertyValue = "javax.jms.Queue"), + @ActivationConfigProperty(propertyName = "destination", propertyValue = "jms/TradeBrokerQueue"), + //@ActivationConfigProperty(propertyName = "destination", propertyValue = "TradeBrokerQueue"), + @ActivationConfigProperty(propertyName = "subscriptionDurability", propertyValue = "NonDurable") }) +@Trace +public class DTBroker3MDB implements MessageListener { + private final MDBStats mdbStats; + private int statInterval = 10000; + + @Resource + public MessageDrivenContext mdc; + + @Inject @Any + Instance services; + + private TradeServices trade; + + public DTBroker3MDB() { + + if (statInterval <= 0) { + statInterval = 10000; + } + mdbStats = MDBStats.getInstance(); + } + + @PostConstruct + void boostrapTradeServices() { + trade = services.select(new TradeRunTimeModeLiteral(TradeConfig.getRunTimeModeNames()[TradeConfig.getRunTimeMode()])).get(); + } + + @Override + public void onMessage(Message message) { + try { + + Log.trace("TradeBroker:onMessage -- received message -->" + ((TextMessage) message).getText() + "command-->" + + message.getStringProperty("command") + "<--"); + + if (message.getJMSRedelivered()) { + Log.log("DTBroker3MDB: The following JMS message was redelivered due to a rollback:\n" + ((TextMessage) message).getText()); + // Order has been cancelled -- ignore returned messages + return; + } + String command = message.getStringProperty("command"); + if (command == null) { + Log.debug("DTBroker3MDB:onMessage -- received message with null command. Message-->" + message); + return; + } + if (command.equalsIgnoreCase("neworder")) { + /* Get the Order ID and complete the Order */ + Integer orderID = new Integer(message.getIntProperty("orderID")); + boolean twoPhase = message.getBooleanProperty("twoPhase"); + boolean direct = message.getBooleanProperty("direct"); + long publishTime = message.getLongProperty("publishTime"); + long receiveTime = System.currentTimeMillis(); + + try { + //TODO: why direct? + //trade = getTrade(direct); + + Log.trace("DTBroker3MDB:onMessage - completing order " + orderID + " twoPhase=" + twoPhase + " direct=" + direct); + + trade.completeOrder(orderID, twoPhase); + + TimerStat currentStats = mdbStats.addTiming("DTBroker3MDB:neworder", publishTime, receiveTime); + + if ((currentStats.getCount() % statInterval) == 0) { + Log.log(" DTBroker3MDB: processed " + statInterval + " stock trading orders." + + " Total NewOrders process = " + currentStats.getCount() + + "Time (in seconds):" + + " min: " +currentStats.getMinSecs()+ + " max: " +currentStats.getMaxSecs()+ + " avg: " +currentStats.getAvgSecs()); + } + } catch (Exception e) { + Log.error("DTBroker3MDB:onMessage Exception completing order: " + orderID + "\n", e); + mdc.setRollbackOnly(); + /* + * UPDATE - order is cancelled in trade if an error is + * caught try { trade.cancelOrder(orderID, twoPhase); } + * catch (Exception e2) { Log.error("order cancel failed", + * e); } + */ + } + } else if (command.equalsIgnoreCase("ping")) { + + Log.trace("DTBroker3MDB:onMessage received test command -- message: " + ((TextMessage) message).getText()); + + long publishTime = message.getLongProperty("publishTime"); + long receiveTime = System.currentTimeMillis(); + + TimerStat currentStats = mdbStats.addTiming("DTBroker3MDB:ping", publishTime, receiveTime); + + if ((currentStats.getCount() % statInterval) == 0) { + Log.log(" DTBroker3MDB: received " + statInterval + " ping messages." + + " Total ping message count = " + currentStats.getCount() + + " Time (in seconds):" + + " min: " +currentStats.getMinSecs()+ + " max: " +currentStats.getMaxSecs()+ + " avg: " +currentStats.getAvgSecs()); + } + } else { + Log.error("DTBroker3MDB:onMessage - unknown message request command-->" + command + "<-- message=" + ((TextMessage) message).getText()); + } + } catch (Throwable t) { + // JMS onMessage should handle all exceptions + Log.error("DTBroker3MDB: Error rolling back transaction", t); + mdc.setRollbackOnly(); + } + } + + + +} diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/mdb/DTStreamer3MDB.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/mdb/DTStreamer3MDB.java new file mode 100644 index 00000000..49fc8a5b --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/mdb/DTStreamer3MDB.java @@ -0,0 +1,123 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.mdb; + +import javax.annotation.Resource; +import javax.ejb.ActivationConfigProperty; +import javax.ejb.MessageDriven; +import javax.ejb.MessageDrivenContext; +import javax.ejb.TransactionAttribute; +import javax.ejb.TransactionAttributeType; +import javax.ejb.TransactionManagement; +import javax.ejb.TransactionManagementType; +import javax.jms.Message; +import javax.jms.MessageListener; +import javax.jms.TextMessage; + + +import com.ibm.websphere.samples.daytrader.interfaces.Trace; +import com.ibm.websphere.samples.daytrader.util.Log; +import com.ibm.websphere.samples.daytrader.util.MDBStats; +import com.ibm.websphere.samples.daytrader.util.TimerStat; + +//For Glassfish/Payara - take jms/ off of the destination name + +@TransactionAttribute(TransactionAttributeType.REQUIRED) +@TransactionManagement(TransactionManagementType.CONTAINER) +@MessageDriven(activationConfig = { @ActivationConfigProperty(propertyName = "acknowledgeMode", propertyValue = "Auto-acknowledge"), + @ActivationConfigProperty(propertyName = "destinationType", propertyValue = "javax.jms.Topic"), + @ActivationConfigProperty(propertyName = "destination", propertyValue = "jms/TradeStreamerTopic"), + //@ActivationConfigProperty(propertyName = "destination", propertyValue = "TradeStreamerTopic"), + @ActivationConfigProperty(propertyName = "subscriptionDurability", propertyValue = "NonDurable") }) +@Trace +public class DTStreamer3MDB implements MessageListener { + + private final MDBStats mdbStats; + private int statInterval = 10000; + + @Resource + public MessageDrivenContext mdc; + + + /** Creates a new instance of TradeSteamerMDB */ + public DTStreamer3MDB() { + Log.trace("DTStreamer3MDB:DTStreamer3MDB()"); + + if (statInterval <= 0) { + statInterval = 10000; + } + mdbStats = MDBStats.getInstance(); + } + + @Override + public void onMessage(Message message) { + + try { + Log.trace("DTStreamer3MDB:onMessage -- received message -->" + ((TextMessage) message).getText() + "command-->" + + message.getStringProperty("command") + "<--"); + + String command = message.getStringProperty("command"); + if (command == null) { + Log.debug("DTStreamer3MDB:onMessage -- received message with null command. Message-->" + message); + return; + } + if (command.equalsIgnoreCase("updateQuote")) { + Log.trace("DTStreamer3MDB:onMessage -- received message -->" + ((TextMessage) message).getText() + "\n\t symbol = " + + message.getStringProperty("symbol") + "\n\t current price =" + message.getStringProperty("price") + "\n\t old price =" + + message.getStringProperty("oldPrice")); + + long publishTime = message.getLongProperty("publishTime"); + long receiveTime = System.currentTimeMillis(); + + TimerStat currentStats = mdbStats.addTiming("DTStreamer3MDB:udpateQuote", publishTime, receiveTime); + + if ((currentStats.getCount() % statInterval) == 0) { + Log.log(" DTStreamer3MDB: " + statInterval + " prices updated:" + + " Total message count = " + currentStats.getCount() + + " Time (in seconds):" + + " min: " +currentStats.getMinSecs()+ + " max: " +currentStats.getMaxSecs()+ + " avg: " +currentStats.getAvgSecs() ); + } + } else if (command.equalsIgnoreCase("ping")) { + Log.trace("DTStreamer3MDB:onMessage received ping command -- message: " + ((TextMessage) message).getText()); + + + long publishTime = message.getLongProperty("publishTime"); + long receiveTime = System.currentTimeMillis(); + + TimerStat currentStats = mdbStats.addTiming("DTStreamer3MDB:ping", publishTime, receiveTime); + + if ((currentStats.getCount() % statInterval) == 0) { + Log.log(" DTStreamer3MDB: received " + statInterval + " ping messages." + + " Total message count = " + currentStats.getCount() + + " Time (in seconds):" + + " min: " +currentStats.getMinSecs()+ + " max: " +currentStats.getMaxSecs()+ + " avg: " +currentStats.getAvgSecs()); + } + } else { + Log.error("DTStreamer3MDB:onMessage - unknown message request command-->" + command + "<-- message=" + ((TextMessage) message).getText()); + } + } catch (Throwable t) { + // JMS onMessage should handle all exceptions + Log.error("DTStreamer3MDB: Exception", t); + //UPDATE - Not rolling back for now -- so error messages are not redelivered + mdc.setRollbackOnly(); + } + } + +} diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/util/Diagnostics.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/util/Diagnostics.java new file mode 100644 index 00000000..0c53c60c --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/util/Diagnostics.java @@ -0,0 +1,77 @@ +/** + * (C) Copyright IBM Corporation 2022. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.util; + +import java.util.concurrent.ArrayBlockingQueue; + +public class Diagnostics { + private static final int DRIVE_MEMORY = Integer.getInteger("DRIVE_MEMORY", 0); + private static final int DRIVE_LATENCY = Integer.getInteger("DRIVE_LATENCY", 0); + private static final int DRIVE_MEMACCUMULATION = Integer.getInteger("DRIVE_MEMACCUMULATION", 0); + private static final ArrayBlockingQueue accumulation; + + static { + if (DRIVE_MEMORY > 0) { + Log.warning("DRIVE_MEMORY=" + DRIVE_MEMORY + + " has been specified which will allocate that many bytes on some app requests"); + } + if (DRIVE_MEMACCUMULATION > 0) { + Log.warning("DRIVE_MEMACCUMULATION=" + DRIVE_MEMACCUMULATION + + " has been specified which will accumulate up to " + (DRIVE_MEMORY * DRIVE_MEMACCUMULATION) + + " bytes"); + accumulation = new ArrayBlockingQueue(DRIVE_MEMACCUMULATION); + } else { + accumulation = null; + } + if (DRIVE_LATENCY > 0) { + Log.warning("DRIVE_LATENCY=" + DRIVE_LATENCY + + " has been specified which will sleep that many milliseconds on some app requests"); + } + } + + public static void checkDiagnostics() { + if (DRIVE_MEMORY > 0) { + byte[] memory = new byte[DRIVE_MEMORY]; + // Not sure if Java will optimize this away if we don't use it, so just + // do something trivial + int count = 0; + for (byte b : memory) { + if ((b & 0x01) > 0) { + count++; + } + } + if (count > 0) { + Log.error("Something that shouldn't happen"); + } + if (DRIVE_MEMACCUMULATION > 0) { + synchronized (accumulation) { + if (accumulation.size() >= DRIVE_MEMACCUMULATION) { + accumulation.remove(); + } + accumulation.add(memory); + } + } + } + + if (DRIVE_LATENCY > 0) { + try { + Thread.sleep(DRIVE_LATENCY); + } catch (InterruptedException e) { + e.printStackTrace(); + } + } + } +} \ No newline at end of file diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/util/FinancialUtils.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/util/FinancialUtils.java new file mode 100644 index 00000000..076529ce --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/util/FinancialUtils.java @@ -0,0 +1,105 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.util; + +import java.math.BigDecimal; +import java.util.Collection; +import java.util.Iterator; + +import com.ibm.websphere.samples.daytrader.entities.HoldingDataBean; + +public class FinancialUtils { + + public static final int ROUND = BigDecimal.ROUND_HALF_UP; + public static final int SCALE = 2; + public static final BigDecimal ZERO = (new BigDecimal(0.00)).setScale(SCALE); + public static final BigDecimal ONE = (new BigDecimal(1.00)).setScale(SCALE); + public static final BigDecimal HUNDRED = (new BigDecimal(100.00)).setScale(SCALE); + + public static BigDecimal computeGain(BigDecimal currentBalance, BigDecimal openBalance) { + return currentBalance.subtract(openBalance).setScale(SCALE); + } + + public static BigDecimal computeGainPercent(BigDecimal currentBalance, BigDecimal openBalance) { + if (openBalance.doubleValue() == 0.0) { + return ZERO; + } + BigDecimal gainPercent = currentBalance.divide(openBalance, ROUND).subtract(ONE).multiply(HUNDRED); + return gainPercent; + } + + public static BigDecimal computeHoldingsTotal(Collection holdingDataBeans) { + BigDecimal holdingsTotal = new BigDecimal(0.0).setScale(SCALE); + if (holdingDataBeans == null) { + return holdingsTotal; + } + Iterator it = holdingDataBeans.iterator(); + while (it.hasNext()) { + HoldingDataBean holdingData = (HoldingDataBean) it.next(); + BigDecimal total = holdingData.getPurchasePrice().multiply(new BigDecimal(holdingData.getQuantity())); + holdingsTotal = holdingsTotal.add(total); + } + return holdingsTotal.setScale(SCALE); + } + + public static String printGainHTML(BigDecimal gain) { + String htmlString, arrow; + if (gain.doubleValue() < 0.0) { + htmlString = ""; + arrow = "arrowdown.gif"; + } else { + htmlString = ""; + arrow = "arrowup.gif"; + } + + htmlString += gain.setScale(SCALE, ROUND) + ""; + return htmlString; + } + + public static String printChangeHTML(double change) { + String htmlString, arrow; + if (change < 0.0) { + htmlString = ""; + arrow = "arrowdown.gif"; + } else { + htmlString = ""; + arrow = "arrowup.gif"; + } + + htmlString += change + ""; + return htmlString; + } + + public static String printGainPercentHTML(BigDecimal gain) { + String htmlString, arrow; + if (gain.doubleValue() < 0.0) { + htmlString = "("; + arrow = "arrowdown.gif"; + } else { + htmlString = "(+"; + arrow = "arrowup.gif"; + } + + htmlString += gain.setScale(SCALE, ROUND); + htmlString += "%)"; + return htmlString; + } + + public static String printQuoteLink(String symbol) { + return "
    " + symbol + ""; + } + +} \ No newline at end of file diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/util/KeyBlock.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/util/KeyBlock.java new file mode 100644 index 00000000..8133d60f --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/util/KeyBlock.java @@ -0,0 +1,140 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.util; + +import java.util.AbstractSequentialList; +import java.util.ListIterator; + +public class KeyBlock extends AbstractSequentialList { + + // min and max provide range of valid primary keys for this KeyBlock + private int min = 0; + private int max = 0; + private int index = 0; + + /** + * Constructor for KeyBlock + */ + public KeyBlock() { + super(); + min = 0; + max = 0; + index = min; + } + + /** + * Constructor for KeyBlock + */ + public KeyBlock(int min, int max) { + super(); + this.min = min; + this.max = max; + index = min; + } + + /** + * @see AbstractCollection#size() + */ + @Override + public int size() { + return (max - min) + 1; + } + + /** + * @see AbstractSequentialList#listIterator(int) + */ + @Override + public ListIterator listIterator(int arg0) { + return new KeyBlockIterator(); + } + + class KeyBlockIterator implements ListIterator { + + /** + * @see ListIterator#hasNext() + */ + @Override + public boolean hasNext() { + return index <= max; + } + + /** + * @see ListIterator#next() + */ + @Override + public synchronized Object next() { + if (index > max) { + throw new java.lang.RuntimeException("KeyBlock:next() -- Error KeyBlock depleted"); + } + return new Integer(index++); + } + + /** + * @see ListIterator#hasPrevious() + */ + @Override + public boolean hasPrevious() { + return index > min; + } + + /** + * @see ListIterator#previous() + */ + @Override + public Object previous() { + return new Integer(--index); + } + + /** + * @see ListIterator#nextIndex() + */ + @Override + public int nextIndex() { + return index - min; + } + + /** + * @see ListIterator#previousIndex() + */ + @Override + public int previousIndex() { + throw new UnsupportedOperationException("KeyBlock: previousIndex() not supported"); + } + + /** + * @see ListIterator#add() + */ + @Override + public void add(Object o) { + throw new UnsupportedOperationException("KeyBlock: add() not supported"); + } + + /** + * @see ListIterator#remove() + */ + @Override + public void remove() { + throw new UnsupportedOperationException("KeyBlock: remove() not supported"); + } + + /** + * @see ListIterator#set(Object) + */ + @Override + public void set(Object arg0) { + } + } +} \ No newline at end of file diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/util/Log.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/util/Log.java new file mode 100644 index 00000000..83928517 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/util/Log.java @@ -0,0 +1,162 @@ +/** + * (C) Copyright IBM Corporation 2015, 2022. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.util; + +import java.util.Collection; +import java.util.Iterator; +import java.util.logging.Level; +import java.util.logging.Logger; + + + +public class Log { + + private final static Logger log = Logger.getLogger("daytrader"); + + + // A general purpose, high performance logging, tracing, statistic service + + public static void log(String message) { + log.log(Level.INFO, message); + } + + public static void log(String msg1, String msg2) { + log(msg1 + msg2); + } + + public static void log(String msg1, String msg2, String msg3) { + log(msg1 + msg2 + msg3); + } + + public static void error(String message) { + message = "Error: " + message; + log.severe(message); + } + + public static void error(String message, Throwable e) { + error(message + "\n\t" + e.toString()); + e.printStackTrace(System.out); + } + + public static void error(String msg1, String msg2, Throwable e) { + error(msg1 + "\n" + msg2 + "\n\t", e); + } + + public static void error(String msg1, String msg2, String msg3, Throwable e) { + error(msg1 + "\n" + msg2 + "\n" + msg3 + "\n\t", e); + } + + public static void error(Throwable e, String message) { + error(message + "\n\t", e); + e.printStackTrace(System.out); + } + + public static void error(Throwable e, String msg1, String msg2) { + error(msg1 + "\n" + msg2 + "\n\t", e); + } + + public static void error(Throwable e, String msg1, String msg2, String msg3) { + error(msg1 + "\n" + msg2 + "\n" + msg3 + "\n\t", e); + } + + public static void trace(String message) { + log.log(Level.FINE, message + " threadID=" + Thread.currentThread()); + } + + public static void traceInterceptor(String message, Object parm1) { + log.log(Level.SEVERE,message,parm1); + } + + public static void trace(String message, Object parm1) { + trace(message + "(" + parm1 + ")"); + } + + public static void trace(String message, Object parm1, Object parm2) { + trace(message + "(" + parm1 + ", " + parm2 + ")"); + } + + public static void trace(String message, Object parm1, Object parm2, Object parm3) { + trace(message + "(" + parm1 + ", " + parm2 + ", " + parm3 + ")"); + } + + public static void trace(String message, Object parm1, Object parm2, Object parm3, Object parm4) { + trace(message + "(" + parm1 + ", " + parm2 + ", " + parm3 + ")" + ", " + parm4); + } + + public static void trace(String message, Object parm1, Object parm2, Object parm3, Object parm4, Object parm5) { + trace(message + "(" + parm1 + ", " + parm2 + ", " + parm3 + ")" + ", " + parm4 + ", " + parm5); + } + + public static void trace(String message, Object parm1, Object parm2, Object parm3, Object parm4, Object parm5, Object parm6) { + trace(message + "(" + parm1 + ", " + parm2 + ", " + parm3 + ")" + ", " + parm4 + ", " + parm5 + ", " + parm6); + } + + public static void trace(String message, Object parm1, Object parm2, Object parm3, Object parm4, Object parm5, Object parm6, Object parm7) { + trace(message + "(" + parm1 + ", " + parm2 + ", " + parm3 + ")" + ", " + parm4 + ", " + parm5 + ", " + parm6 + ", " + parm7); + } + + public static void traceEnter(String message) { + log.log(Level.FINE,"Method enter --" + message); + } + + public static void traceExit(String message) { + log.log(Level.FINE,"Method exit --" + message); + } + + public static void stat(String message) { + log(message); + } + + public static void debug(String message) { + log.log(Level.INFO,message); + } + + public static void print(String message) { + log(message); + } + + public static void printObject(Object o) { + log("\t" + o.toString()); + } + + public static void printCollection(Collection c) { + log("\t---Log.printCollection -- collection size=" + c.size()); + Iterator it = c.iterator(); + + while (it.hasNext()) { + log("\t\t" + it.next().toString()); + } + log("\t---Log.printCollection -- complete"); + } + + public static void printCollection(String message, Collection c) { + log(message); + printCollection(c); + } + + + public static boolean doDebug() { + return true; + } + + public static boolean doTrace() { + return log.isLoggable(Level.FINE); + } + + public static void warning(String message) { + log.log(Level.WARNING, message); + } +} diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/util/MDBStats.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/util/MDBStats.java new file mode 100644 index 00000000..fc49ba01 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/util/MDBStats.java @@ -0,0 +1,68 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.util; + +/** + * + * To change this generated comment edit the template variable "typecomment": + * Window>Preferences>Java>Templates. To enable and disable the creation of type + * comments go to Window>Preferences>Java>Code Generation. + */ +public class MDBStats extends java.util.HashMap { + + private static final long serialVersionUID = -3759835921094193760L; + // Singleton class + private static MDBStats mdbStats = null; + + private MDBStats() { + } + + public static synchronized MDBStats getInstance() { + if (mdbStats == null) { + mdbStats = new MDBStats(); + } + return mdbStats; + } + + public TimerStat addTiming(String type, long sendTime, long recvTime) { + TimerStat stats = null; + synchronized (type) { + + stats = get(type); + if (stats == null) { + stats = new TimerStat(); + } + + long time = recvTime - sendTime; + if (time > stats.getMax()) { + stats.setMax(time); + } + if (time < stats.getMin()) { + stats.setMin(time); + } + stats.setCount(stats.getCount() + 1); + stats.setTotalTime(stats.getTotalTime() + time); + + put(type, stats); + } + return stats; + } + + public synchronized void reset() { + clear(); + } + +} diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/util/RecentQuotePriceChangeList.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/util/RecentQuotePriceChangeList.java new file mode 100644 index 00000000..cf3966da --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/util/RecentQuotePriceChangeList.java @@ -0,0 +1,77 @@ +/** + * (C) Copyright IBM Corporation 2019. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.util; +import java.util.List; +import java.util.concurrent.CopyOnWriteArrayList; + +import javax.annotation.Resource; +import javax.enterprise.concurrent.ManagedExecutorService; +import javax.enterprise.context.ApplicationScoped; +import javax.enterprise.event.Event; +import javax.enterprise.event.NotificationOptions; +import javax.inject.Inject; +import javax.validation.constraints.NotEmpty; +import javax.validation.constraints.NotNull; +import javax.validation.constraints.Size; + +import com.ibm.websphere.samples.daytrader.entities.QuoteDataBean; +import com.ibm.websphere.samples.daytrader.interfaces.QuotePriceChange; + + +/** This class is a holds the last 5 stock changes, used by the MarketSummary WebSocket + * and the JAX-RS SSE Broadcaster + * It fires a CDI event everytime a price change is added + **/ + +@ApplicationScoped +public class RecentQuotePriceChangeList { + + private List list = new CopyOnWriteArrayList(); + private int maxSize = 5; + + @Resource + private ManagedExecutorService mes; + + @Inject + @QuotePriceChange + Event quotePriceChangeEvent; + + public boolean add(QuoteDataBean quoteData) { + + int symbolNumber = new Integer(quoteData.getSymbol().substring(2)); + + if ( symbolNumber < TradeConfig.getMAX_QUOTES() * TradeConfig.getListQuotePriceChangeFrequency() * 0.01) { + list.add(0, quoteData); + + // Add stock, remove if needed + if(list.size() > maxSize) { + list.remove(maxSize); + } + quotePriceChangeEvent.fireAsync("quotePriceChange for symbol: " + quoteData.getSymbol(), NotificationOptions.builder().setExecutor(mes).build()); + } + return true; + } + + public boolean isEmpty() { + return list.isEmpty(); + } + + @Size(max=5) + @NotEmpty + public List<@NotNull QuoteDataBean> recentList() { + return list; + } +} diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/util/TimerStat.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/util/TimerStat.java new file mode 100644 index 00000000..c3057b48 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/util/TimerStat.java @@ -0,0 +1,133 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.util; + +/** + * + * To change this generated comment edit the template variable "typecomment": + * Window>Preferences>Java>Templates. To enable and disable the creation of type + * comments go to Window>Preferences>Java>Code Generation. + */ +public class TimerStat { + + private double min = 1000000000.0, max = 0.0, totalTime = 0.0; + private int count; + + /** + * Returns the count. + * + * @return int + */ + public int getCount() { + return count; + } + + /** + * Returns the max. + * + * @return double + */ + public double getMax() { + return max; + } + + /** + * Returns the min. + * + * @return double + */ + public double getMin() { + return min; + } + + /** + * Sets the count. + * + * @param count + * The count to set + */ + public void setCount(int count) { + this.count = count; + } + + /** + * Sets the max. + * + * @param max + * The max to set + */ + public void setMax(double max) { + this.max = max; + } + + /** + * Sets the min. + * + * @param min + * The min to set + */ + public void setMin(double min) { + this.min = min; + } + + /** + * Returns the totalTime. + * + * @return double + */ + public double getTotalTime() { + return totalTime; + } + + /** + * Sets the totalTime. + * + * @param totalTime + * The totalTime to set + */ + public void setTotalTime(double totalTime) { + this.totalTime = totalTime; + } + + /** + * Returns the max in Secs + * + * @return double + */ + public double getMaxSecs() { + return max / 1000.0; + } + + /** + * Returns the min in Secs + * + * @return double + */ + public double getMinSecs() { + return min / 1000.0; + } + + /** + * Returns the average time in Secs + * + * @return double + */ + public double getAvgSecs() { + + double avg = getTotalTime() / getCount(); + return avg / 1000.0; + } +} diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/util/TraceInterceptor.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/util/TraceInterceptor.java new file mode 100644 index 00000000..5af7f4b3 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/util/TraceInterceptor.java @@ -0,0 +1,49 @@ +/** + * (C) Copyright IBM Corporation 2019. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.util; + +import java.io.Serializable; +import java.text.MessageFormat; +import java.util.Arrays; + +import javax.annotation.Priority; + +import javax.interceptor.AroundInvoke; +import javax.interceptor.Interceptor; +import javax.interceptor.InvocationContext; + +import com.ibm.websphere.samples.daytrader.interfaces.Trace; + + +@Trace +@Interceptor +@Priority(Interceptor.Priority.APPLICATION) +public class TraceInterceptor implements Serializable { + + private static final long serialVersionUID = -4195975993998268072L; + private static final MessageFormat form = new MessageFormat("Method enter -- {0} called with {1}"); + + @AroundInvoke + public Object logMethodEntry(InvocationContext ctx) throws Exception { + Log.trace(form.format( + new String[]{ + ctx.getMethod().getDeclaringClass().getSimpleName() + ":"+ ctx.getMethod().getName(), + Arrays.deepToString(ctx.getParameters()) + })); + + return ctx.proceed(); + } +} diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/util/TradeConfig.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/util/TradeConfig.java new file mode 100644 index 00000000..34a03983 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/util/TradeConfig.java @@ -0,0 +1,752 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.util; + +import java.math.BigDecimal; +import java.util.ArrayList; +import java.util.Random; + +/** + * TradeConfig is a JavaBean holding all configuration and runtime parameters + * for the Trade application TradeConfig sets runtime parameters such as the + * RunTimeMode (EJB, JDBC, EJB_ALT) + * + */ + +public class TradeConfig { + + /* Trade Runtime Configuration Parameters */ + + /* Trade Runtime Mode parameters */ + private static String[] runTimeModeNames = { "Full EJB3", "Direct (JDBC)", "Session to Direct"}; + public static final int EJB3 = 0; + public static final int DIRECT = 1; + public static final int SESSION_TO_DIRECT = 2; + private static int runTimeMode = EJB3; + + private static String[] orderProcessingModeNames = { "Sync", "Async","Async_2-Phase" }; + public static final int SYNCH = 0; + public static final int ASYNCH = 1; + public static final int ASYNCH_2PHASE = 2; + private static int orderProcessingMode = SYNCH; + + private static String[] accessModeNames = { "Standard", "WebServices" }; + public static final int STANDARD = 0; + private static int accessMode = STANDARD; + + /* Trade Web Interface parameters */ + private static String[] webInterfaceNames = { "JSP", "JSP-Images", "JSP-Images-Http2" }; + public static final int JSP = 0; + public static final int JSP_Images = 1; + public static final int JSP_Images_HTTP2 = 2; + private static int webInterface = JSP; + + /* Trade Database Scaling parameters */ + private static int MAX_USERS = 15000; + private static int MAX_QUOTES = 10000; + + + /* Trade XA Datasource specific parameters */ + public static boolean JDBCDriverNeedsGlobalTransation = false; + + /* Trade Config Miscellaneous itmes */ + public static String DATASOURCE = "java:comp/env/jdbc/TradeDataSource"; + public static int KEYBLOCKSIZE = 1000; + public static int QUOTES_PER_PAGE = 10; + public static boolean RND_USER = true; + // public static int RND_SEED = 0; + private static int MAX_HOLDINGS = 10; + private static int count = 0; + private static Object userID_count_semaphore = new Object(); + private static int userID_count = 0; + private static String hostName = null; + private static Random r0 = new Random(System.currentTimeMillis()); + // private static Random r1 = new Random(RND_SEED); + private static Random randomNumberGenerator = r0; + public static final String newUserPrefix = "ru:"; + public static final int verifyPercent = 5; + private static boolean updateQuotePrices = true; + private static int primIterations = 1; + private static boolean longRun = true; + private static boolean publishQuotePriceChange = true; + private static int listQuotePriceChangeFrequency = 100; + private static boolean displayOrderAlerts = true; + + /** + * -1 means every operation 0 means never perform a market summary > 0 means + * number of seconds between summaries. These will be synchronized so only + * one transaction in this period will create a summary and will cache its + * results. + */ + private static int marketSummaryInterval = 20; + + /* + * Penny stocks is a problem where the random price change factor gets a + * stock down to $.01. In this case trade jumpstarts the price back to $6.00 + * to keep the math interesting. + */ + public static BigDecimal PENNY_STOCK_PRICE; + public static BigDecimal PENNY_STOCK_RECOVERY_MIRACLE_MULTIPLIER; + static { + PENNY_STOCK_PRICE = new BigDecimal(0.01); + PENNY_STOCK_PRICE = PENNY_STOCK_PRICE.setScale(2, BigDecimal.ROUND_HALF_UP); + PENNY_STOCK_RECOVERY_MIRACLE_MULTIPLIER = new BigDecimal(600.0); + PENNY_STOCK_RECOVERY_MIRACLE_MULTIPLIER.setScale(2, BigDecimal.ROUND_HALF_UP); + } + + /* + * CJB (DAYTRADER-25) - Also need to impose a ceiling on the quote price to + * ensure prevent account and holding balances from exceeding the databases + * decimal precision. At some point, this maximum value can be used to + * trigger a stock split. + */ + + public static BigDecimal MAXIMUM_STOCK_PRICE; + public static BigDecimal MAXIMUM_STOCK_SPLIT_MULTIPLIER; + static { + MAXIMUM_STOCK_PRICE = new BigDecimal(400); + MAXIMUM_STOCK_PRICE.setScale(2, BigDecimal.ROUND_HALF_UP); + MAXIMUM_STOCK_SPLIT_MULTIPLIER = new BigDecimal(0.5); + MAXIMUM_STOCK_SPLIT_MULTIPLIER.setScale(2, BigDecimal.ROUND_HALF_UP); + } + + /* + * Trade Scenario actions mixes. Each of the array rows represents a + * specific Trade Scenario Mix. The columns give the percentages for each + * action in the column header. Note: "login" is always 0. logout represents + * both login and logout (because each logout operation will cause a new + * login when the user context attempts the next action. + */ + /* Trade Scenario Workload parameters */ + public static final int HOME_OP = 0; + public static final int QUOTE_OP = 1; + public static final int LOGIN_OP = 2; + public static final int LOGOUT_OP = 3; + public static final int REGISTER_OP = 4; + public static final int ACCOUNT_OP = 5; + public static final int PORTFOLIO_OP = 6; + public static final int BUY_OP = 7; + public static final int SELL_OP = 8; + public static final int UPDATEACCOUNT_OP = 9; + + private static int[][] scenarioMixes = { + // h q l o r a p b s u + { 20, 40, 0, 4, 2, 10, 12, 4, 4, 4 }, // STANDARD + { 20, 40, 0, 4, 2, 7, 7, 7, 7, 6 }, // High Volume + }; + private static char[] actions = { 'h', 'q', 'l', 'o', 'r', 'a', 'p', 'b', 's', 'u' }; + private static int sellDeficit = 0; + // Tracks the number of buys over sell when a users portfolio is empty + // Used to maintain the correct ratio of buys/sells + + /* JSP pages for all Trade Actions */ + + public static final int WELCOME_PAGE = 0; + public static final int REGISTER_PAGE = 1; + public static final int PORTFOLIO_PAGE = 2; + public static final int QUOTE_PAGE = 3; + public static final int HOME_PAGE = 4; + public static final int ACCOUNT_PAGE = 5; + public static final int ORDER_PAGE = 6; + public static final int CONFIG_PAGE = 7; + public static final int STATS_PAGE = 8; + public static final int MARKET_SUMMARY_PAGE = 9; + + // FUTURE Add XML/XSL View + public static String[][] webUI = { + { "/welcome.jsp", "/register.jsp", "/portfolio.jsp", "/quote.jsp", "/tradehome.jsp", "/account.jsp", "/order.jsp", "/config.jsp", "/runStats.jsp", + "/marketSummary.jsp" }, + // JSP Interface + { "/welcomeImg.jsp", "/registerImg.jsp", "/portfolioImg.jsp", "/quoteImg.jsp", "/tradehomeImg.jsp", "/accountImg.jsp", "/orderImg.jsp", + "/config.jsp", "/runStats.jsp", "/marketSummary.jsp" }, + // JSP Interface + { "/welcomeImg.jsp", "/registerImg.jsp", "/portfolioImg.jsp", "/quoteImg.jsp", "/tradehomeImg.jsp", "/accountImg.jsp", "/orderImg.jsp", + "/config.jsp", "/runStats.jsp", "/marketSummary.jsp" }, + }; + + + /** + * Return the hostname for this system Creation date: (2/16/2000 9:02:25 PM) + */ + + private static String getHostname() { + try { + if (hostName == null) { + hostName = java.net.InetAddress.getLocalHost().getHostName(); + // Strip of fully qualifed domain if necessary + try { + hostName = hostName.substring(0, hostName.indexOf('.')); + } catch (Exception e) { + } + } + } catch (Exception e) { + Log.error("Exception getting local host name using 'localhost' - ", e); + hostName = "localhost"; + } + return hostName; + } + + /** + * Return a Trade UI Web page based on the current configuration This may + * return a JSP page or a Servlet page Creation date: (3/14/2000 9:08:34 PM) + */ + + public static String getPage(int pageNumber) { + return webUI[webInterface][pageNumber]; + } + + /** + * Return the list of run time mode names Creation date: (3/8/2000 5:58:34 + * PM) + * + * @return java.lang.String[] + */ + public static java.lang.String[] getRunTimeModeNames() { + return runTimeModeNames; + } + + private static int scenarioCount = 0; + + /** + * Return a Trade Scenario Operation based on the setting of the current mix + * (TradeScenarioMix) Creation date: (2/10/2000 9:08:34 PM) + */ + + public static char getScenarioAction(boolean newUser) { + int r = rndInt(100); // 0 to 99 = 100 + int i = 0; + int sum = scenarioMixes[0][i]; + while (sum <= r) { + i++; + sum += scenarioMixes[0][i]; + } + + incrementScenarioCount(); + + /* + * In TradeScenarioServlet, if a sell action is selected, but the users + * portfolio is empty, a buy is executed instead and sellDefecit is + * incremented. This allows the number of buy/sell operations to stay in + * sync w/ the given Trade mix. + */ + + if ((!newUser) && (actions[i] == 'b')) { + synchronized (TradeConfig.class) { + if (sellDeficit > 0) { + sellDeficit--; + return 's'; + // Special case for TradeScenarioServlet to note this is a + // buy switched to a sell to fix sellDeficit + } + } + } + + return actions[i]; + } + + public static String getUserID() { + String userID; + if (RND_USER) { + userID = rndUserID(); + } else { + userID = nextUserID(); + } + return userID; + } + + private static final BigDecimal orderFee = new BigDecimal("24.95"); + private static final BigDecimal cashFee = new BigDecimal("0.0"); + + public static BigDecimal getOrderFee(String orderType) { + if ((orderType.compareToIgnoreCase("BUY") == 0) || (orderType.compareToIgnoreCase("SELL") == 0)) { + return orderFee; + } + + return cashFee; + + } + + /** + * Increment the sell deficit counter Creation date: (6/21/2000 11:33:45 AM) + */ + public static synchronized void incrementSellDeficit() { + sellDeficit++; + } + + public static String nextUserID() { + String userID; + synchronized (userID_count_semaphore) { + userID = "uid:" + userID_count; + userID_count++; + if (userID_count % MAX_USERS == 0) { + userID_count = 0; + } + } + return userID; + } + + public static double random() { + return randomNumberGenerator.nextDouble(); + } + + public static String rndAddress() { + return rndInt(1000) + " Oak St."; + } + + public static String rndBalance() { + // Give all new users a cool mill in which to trade + return "1000000"; + } + + public static String rndCreditCard() { + return rndInt(100) + "-" + rndInt(1000) + "-" + rndInt(1000) + "-" + rndInt(1000); + } + + public static String rndEmail(String userID) { + return userID.replace(":", "") + "@" + rndInt(100) + ".com"; + } + + public static String rndFullName() { + return "first:" + rndInt(1000) + " last:" + rndInt(5000); + } + + public static int rndInt(int i) { + return (new Float(random() * i)).intValue(); + } + + public static float rndFloat(int i) { + return (new Float(random() * i)).floatValue(); + } + + public static BigDecimal rndBigDecimal(float f) { + return (new BigDecimal(random() * f)).setScale(2, BigDecimal.ROUND_HALF_UP); + } + + public static boolean rndBoolean() { + return randomNumberGenerator.nextBoolean(); + } + + /** + * Returns a new Trade user Creation date: (2/16/2000 8:50:35 PM) + */ + public static synchronized String rndNewUserID() { + + return newUserPrefix + getHostname() + System.currentTimeMillis() + count++; + } + + public static float rndPrice() { + return ((new Integer(rndInt(200))).floatValue()) + 1.0f; + } + + private static final BigDecimal ONE = new BigDecimal(1.0); + + public static BigDecimal getRandomPriceChangeFactor() { + // CJB (DAYTRADER-25) - Vary change factor between 1.1 and 0.9 + double percentGain = rndFloat(1) * 0.1; + if (random() < .5) { + percentGain *= -1; + } + percentGain += 1; + + // change factor is between +/- 20% + BigDecimal percentGainBD = (new BigDecimal(percentGain)).setScale(2, BigDecimal.ROUND_HALF_UP); + if (percentGainBD.doubleValue() <= 0.0) { + percentGainBD = ONE; + } + + return percentGainBD; + } + + public static float rndQuantity() { + return ((new Integer(rndInt(200))).floatValue()) + 1.0f; + } + + public static String rndSymbol() { + return "s:" + rndInt(MAX_QUOTES - 1); + } + + public static String rndSymbols() { + + String symbols = ""; + int num_symbols = rndInt(QUOTES_PER_PAGE); + + for (int i = 0; i <= num_symbols; i++) { + symbols += "s:" + rndInt(MAX_QUOTES - 1); + if (i < num_symbols) { + symbols += ","; + } + } + return symbols; + } + + public static String rndUserID() { + String nextUser = getNextUserIDFromDeck(); + + Log.trace("TradeConfig:rndUserID -- new trader = " + nextUser); + + + return nextUser; + } + + private static synchronized String getNextUserIDFromDeck() { + int numUsers = getMAX_USERS(); + if (deck == null) { + deck = new ArrayList(numUsers); + for (int i = 0; i < numUsers; i++) { + deck.add(i, new Integer(i)); + } + java.util.Collections.shuffle(deck, r0); + } + if (card >= numUsers) { + card = 0; + } + return "uid:" + deck.get(card++); + + } + + // Trade implements a card deck approach to selecting + // users for trading with tradescenarioservlet + private static ArrayList deck = null; + private static int card = 0; + + /** + * This is a convenience method for servlets to set Trade configuration + * parameters from servlet initialization parameters. The servlet provides + * the init param and its value as strings. This method then parses the + * parameter, converts the value to the correct type and sets the + * corresponding TradeConfig parameter to the converted value + * + */ + public static void setConfigParam(String parm, String value) { + Log.log("TradeConfig setting parameter: " + parm + "=" + value); + // Compare the parm value to valid TradeConfig parameters that can be + // set + // by servlet initialization + + // First check the proposed new parm and value - if empty or null ignore + // it + if (parm == null) { + return; + } + parm = parm.trim(); + if (parm.length() <= 0) { + return; + } + if (value == null) { + return; + } + value = value.trim(); + + if (parm.equalsIgnoreCase("orderProcessingMode")) { + try { + for (int i = 0; i < orderProcessingModeNames.length; i++) { + if (value.equalsIgnoreCase(orderProcessingModeNames[i])) { + orderProcessingMode = i; + break; + } + } + } catch (Exception e) { + Log.error("TradeConfig.setConfigParm(..): minor exception caught" + "trying to set orderProcessingMode to " + value + + "reverting to current value: " + orderProcessingModeNames[orderProcessingMode], e); + } // If the value is bad, simply revert to current + } else if (parm.equalsIgnoreCase("accessMode")) { + try { + for (int i = 0; i < accessModeNames.length; i++) { + if (value.equalsIgnoreCase(accessModeNames[i])) { + accessMode = i; + break; + } + } + } catch (Exception e) { + Log.error("TradeConfig.setConfigParm(..): minor exception caught" + "trying to set accessMode to " + value + "reverting to current value: " + + accessModeNames[accessMode], e); + } + } else if (parm.equalsIgnoreCase("WebInterface")) { + try { + for (int i = 0; i < webInterfaceNames.length; i++) { + if (value.equalsIgnoreCase(webInterfaceNames[i])) { + webInterface = i; + break; + } + } + } catch (Exception e) { + Log.error("TradeConfig.setConfigParm(..): minor exception caught" + "trying to set WebInterface to " + value + "reverting to current value: " + + webInterfaceNames[webInterface], e); + + } // If the value is bad, simply revert to current + } else if (parm.equalsIgnoreCase("maxUsers")) { + try { + MAX_USERS = Integer.parseInt(value); + } catch (Exception e) { + Log.error("TradeConfig.setConfigParm(..): minor exception caught" + "Setting maxusers, error parsing string to int:" + value + + "revering to current value: " + MAX_USERS, e); + } // On error, revert to saved + } else if (parm.equalsIgnoreCase("maxQuotes")) { + try { + MAX_QUOTES = Integer.parseInt(value); + } catch (Exception e) { + // >>rjm + Log.error("TradeConfig.setConfigParm(...) minor exception caught" + "Setting max_quotes, error parsing string to int " + value + + "reverting to current value: " + MAX_QUOTES, e); + // < implements RuntimeMode { + + private static final long serialVersionUID = -252789556335033400L; + private String value; + public TradeRunTimeModeLiteral(String value) { + this.value = value; + } + + @Override + public String value() { + return value; + } + +} \ No newline at end of file diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/jsf/AccountDataJSF.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/jsf/AccountDataJSF.java new file mode 100644 index 00000000..9c14067d --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/jsf/AccountDataJSF.java @@ -0,0 +1,327 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.jsf; + +import java.math.BigDecimal; +import java.util.ArrayList; +import java.util.Collection; +import java.util.Date; +import java.util.Iterator; + +import javax.annotation.PostConstruct; +import javax.enterprise.context.RequestScoped; +import javax.enterprise.inject.Any; +import javax.enterprise.inject.Instance; +import javax.faces.context.ExternalContext; +import javax.inject.Inject; +import javax.inject.Named; +import javax.servlet.http.HttpSession; +import javax.validation.constraints.PastOrPresent; +import javax.validation.constraints.PositiveOrZero; + +import com.ibm.websphere.samples.daytrader.entities.AccountDataBean; +import com.ibm.websphere.samples.daytrader.entities.HoldingDataBean; +import com.ibm.websphere.samples.daytrader.entities.OrderDataBean; +import com.ibm.websphere.samples.daytrader.interfaces.Trace; +import com.ibm.websphere.samples.daytrader.interfaces.TradeServices; +import com.ibm.websphere.samples.daytrader.util.FinancialUtils; +import com.ibm.websphere.samples.daytrader.util.TradeConfig; +import com.ibm.websphere.samples.daytrader.util.TradeRunTimeModeLiteral; + +@Named("accountdata") +@RequestScoped +@Trace +public class AccountDataJSF { + + @Inject + private ExternalContext context; + + private TradeServices tradeAction; + + private Date sessionCreationDate; + private Date currentTime; + private String profileID; + private Integer accountID; + + @PastOrPresent + private Date creationDate; + + @PositiveOrZero + private int loginCount; + + @PastOrPresent + private Date lastLogin; + + @PositiveOrZero + private int logoutCount; + private BigDecimal balance; + private BigDecimal openBalance; + private Integer numberHoldings; + private BigDecimal holdingsTotal; + private BigDecimal sumOfCashHoldings; + private BigDecimal gain; + private BigDecimal gainPercent; + + private OrderData[] closedOrders; + private OrderData[] allOrders; + + private Integer numberOfOrders = 0; + private Integer numberOfOrderRows = 5; + + public void toggleShowAllRows() { + setNumberOfOrderRows(0); + } + + @Inject + public AccountDataJSF(@Any Instance services) { + tradeAction = services.select(new TradeRunTimeModeLiteral(TradeConfig.getRunTimeModeNames()[TradeConfig.getRunTimeMode()])).get(); + } + + @PostConstruct + public void home() { + try { + HttpSession session = (HttpSession) context.getSession(true); + + // Get the data and then parse + String userID = (String) session.getAttribute("uidBean"); + AccountDataBean accountData = tradeAction.getAccountData(userID); + Collection holdingDataBeans = tradeAction.getHoldings(userID); + + if (TradeConfig.getDisplayOrderAlerts()) { + + Collection closedOrders = tradeAction.getClosedOrders(userID); + + if (closedOrders != null && closedOrders.size() > 0) { + session.setAttribute("closedOrders", closedOrders); + OrderData[] orderjsfs = new OrderData[closedOrders.size()]; + Iterator it = closedOrders.iterator(); + int i = 0; + + while (it.hasNext()) { + OrderDataBean order = (OrderDataBean) it.next(); + OrderData r = new OrderData(order.getOrderID(), order.getOrderStatus(), order.getOpenDate(), order.getCompletionDate(), + order.getOrderFee(), order.getOrderType(), order.getQuantity(), order.getSymbol()); + orderjsfs[i] = r; + i++; + } + + setClosedOrders(orderjsfs); + } + } + + Collection orderDataBeans = (TradeConfig.getLongRun() ? new ArrayList() : (Collection) tradeAction.getOrders(userID)); + + if (orderDataBeans != null && orderDataBeans.size() > 0) { + session.setAttribute("orderDataBeans", orderDataBeans); + OrderData[] orderjsfs = new OrderData[orderDataBeans.size()]; + Iterator it = orderDataBeans.iterator(); + int i = 0; + + while (it.hasNext()) { + OrderDataBean order = (OrderDataBean) it.next(); + OrderData r = new OrderData(order.getOrderID(), order.getOrderStatus(), order.getOpenDate(), order.getCompletionDate(), + order.getOrderFee(), order.getOrderType(), order.getQuantity(), order.getSymbol(),order.getPrice()); + orderjsfs[i] = r; + i++; + } + setNumberOfOrders(orderDataBeans.size()); + setAllOrders(orderjsfs); + } + + setSessionCreationDate((Date) session.getAttribute("sessionCreationDate")); + setCurrentTime(new java.util.Date()); + doAccountData(accountData, holdingDataBeans); + } catch (Exception e) { + e.printStackTrace(); + } + } + + private void doAccountData(AccountDataBean accountData, Collection holdingDataBeans) { + setProfileID(accountData.getProfileID()); + setAccountID(accountData.getAccountID()); + setCreationDate(accountData.getCreationDate()); + setLoginCount(accountData.getLoginCount()); + setLogoutCount(accountData.getLogoutCount()); + setLastLogin(accountData.getLastLogin()); + setOpenBalance(accountData.getOpenBalance()); + setBalance(accountData.getBalance()); + setNumberHoldings(holdingDataBeans.size()); + setHoldingsTotal(FinancialUtils.computeHoldingsTotal(holdingDataBeans)); + setSumOfCashHoldings(balance.add(holdingsTotal)); + setGain(FinancialUtils.computeGain(sumOfCashHoldings, openBalance)); + setGainPercent(FinancialUtils.computeGainPercent(sumOfCashHoldings, openBalance)); + } + + public Date getSessionCreationDate() { + return sessionCreationDate; + } + + public void setSessionCreationDate(Date sessionCreationDate) { + this.sessionCreationDate = sessionCreationDate; + } + + public Date getCurrentTime() { + return currentTime; + } + + public void setCurrentTime(Date currentTime) { + this.currentTime = currentTime; + } + + public String getProfileID() { + return profileID; + } + + public void setProfileID(String profileID) { + this.profileID = profileID; + } + + public void setAccountID(Integer accountID) { + this.accountID = accountID; + } + + public Integer getAccountID() { + return accountID; + } + + public void setCreationDate(Date creationDate) { + this.creationDate = creationDate; + } + + public Date getCreationDate() { + return creationDate; + } + + public void setLoginCount(int loginCount) { + this.loginCount = loginCount; + } + + public int getLoginCount() { + return loginCount; + } + + public void setBalance(BigDecimal balance) { + this.balance = balance; + } + + public BigDecimal getBalance() { + return balance; + } + + public void setOpenBalance(BigDecimal openBalance) { + this.openBalance = openBalance; + } + + public BigDecimal getOpenBalance() { + return openBalance; + } + + public void setHoldingsTotal(BigDecimal holdingsTotal) { + this.holdingsTotal = holdingsTotal; + } + + public BigDecimal getHoldingsTotal() { + return holdingsTotal; + } + + public void setSumOfCashHoldings(BigDecimal sumOfCashHoldings) { + this.sumOfCashHoldings = sumOfCashHoldings; + } + + public BigDecimal getSumOfCashHoldings() { + return sumOfCashHoldings; + } + + public void setGain(BigDecimal gain) { + this.gain = gain; + } + + public BigDecimal getGain() { + return gain; + } + + public void setGainPercent(BigDecimal gainPercent) { + this.gainPercent = gainPercent.setScale(2); + } + + public BigDecimal getGainPercent() { + return gainPercent; + } + + public void setNumberHoldings(Integer numberHoldings) { + this.numberHoldings = numberHoldings; + } + + public Integer getNumberHoldings() { + return numberHoldings; + } + + public OrderData[] getClosedOrders() { + return closedOrders; + } + + public void setClosedOrders(OrderData[] closedOrders) { + this.closedOrders = closedOrders; + } + + public void setLastLogin(Date lastLogin) { + this.lastLogin = lastLogin; + } + + public Date getLastLogin() { + return lastLogin; + } + + public void setLogoutCount(int logoutCount) { + this.logoutCount = logoutCount; + } + + public int getLogoutCount() { + return logoutCount; + } + + public void setAllOrders(OrderData[] allOrders) { + this.allOrders = allOrders; + } + + public OrderData[] getAllOrders() { + return allOrders; + } + + public String getGainHTML() { + return FinancialUtils.printGainHTML(gain); + } + + public String getGainPercentHTML() { + return FinancialUtils.printGainPercentHTML(gainPercent); + } + + public Integer getNumberOfOrderRows() { + return numberOfOrderRows; + } + + public void setNumberOfOrderRows(Integer numberOfOrderRows) { + this.numberOfOrderRows = numberOfOrderRows; + } + + public Integer getNumberOfOrders() { + return numberOfOrders; + } + + public void setNumberOfOrders(Integer numberOfOrders) { + this.numberOfOrders = numberOfOrders; + } +} diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/jsf/HoldingData.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/jsf/HoldingData.java new file mode 100644 index 00000000..a0a395ea --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/jsf/HoldingData.java @@ -0,0 +1,118 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.jsf; + +import java.io.Serializable; +import java.math.BigDecimal; +import java.util.Date; + +import javax.enterprise.context.RequestScoped; +import javax.inject.Named; + +import com.ibm.websphere.samples.daytrader.util.FinancialUtils; + +@Named +@RequestScoped +public class HoldingData implements Serializable { + + private static final long serialVersionUID = -4760036695773749721L; + + private Integer holdingID; + private double quantity; + private BigDecimal purchasePrice; + private Date purchaseDate; + private String quoteID; + private BigDecimal price; + private BigDecimal basis; + private BigDecimal marketValue; + private BigDecimal gain; + + public void setHoldingID(Integer holdingID) { + this.holdingID = holdingID; + } + + public Integer getHoldingID() { + return holdingID; + } + + public void setQuantity(double quantity) { + this.quantity = quantity; + } + + public double getQuantity() { + return quantity; + } + + public void setPurchasePrice(BigDecimal purchasePrice) { + this.purchasePrice = purchasePrice; + } + + public BigDecimal getPurchasePrice() { + return purchasePrice; + } + + public void setPurchaseDate(Date purchaseDate) { + this.purchaseDate = purchaseDate; + } + + public Date getPurchaseDate() { + return purchaseDate; + } + + public void setQuoteID(String quoteID) { + this.quoteID = quoteID; + } + + public String getQuoteID() { + return quoteID; + } + + public void setPrice(BigDecimal price) { + this.price = price; + } + + public BigDecimal getPrice() { + return price; + } + + public void setBasis(BigDecimal basis) { + this.basis = basis; + } + + public BigDecimal getBasis() { + return basis; + } + + public void setMarketValue(BigDecimal marketValue) { + this.marketValue = marketValue; + } + + public BigDecimal getMarketValue() { + return marketValue; + } + + public void setGain(BigDecimal gain) { + this.gain = gain; + } + + public BigDecimal getGain() { + return gain; + } + + public String getGainHTML() { + return FinancialUtils.printGainHTML(gain); + } +} diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/jsf/JSFLoginFilter.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/jsf/JSFLoginFilter.java new file mode 100644 index 00000000..e9732088 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/jsf/JSFLoginFilter.java @@ -0,0 +1,88 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.jsf; + +import java.io.IOException; + +import javax.servlet.Filter; +import javax.servlet.FilterChain; +import javax.servlet.FilterConfig; +import javax.servlet.ServletException; +import javax.servlet.ServletRequest; +import javax.servlet.ServletResponse; +//import javax.servlet.annotation.WebFilter; +import javax.servlet.annotation.WebFilter; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import javax.servlet.http.HttpSession; + +@WebFilter(filterName = "JSFLoginFilter", urlPatterns = "*.faces") +public class JSFLoginFilter implements Filter { + + public JSFLoginFilter() { + super(); + } + + /** + * @see Filter#init(FilterConfig) + */ + private FilterConfig filterConfig = null; + + @Override + public void init(FilterConfig filterConfig) throws ServletException { + this.filterConfig = filterConfig; + } + + /** + * @see Filter#doFilter(ServletRequest, ServletResponse, FilterChain) + */ + @Override + public void doFilter(ServletRequest req, ServletResponse resp, FilterChain chain) throws IOException, ServletException { + if (filterConfig == null) { + return; + } + + HttpServletRequest request = (HttpServletRequest) req; + HttpServletResponse response = (HttpServletResponse) resp; + + HttpSession session = request.getSession(); + String userID = (String) session.getAttribute("uidBean"); + + // If user has not logged in and is trying access account information, + // redirect to login page. + if (userID == null) { + String url = request.getServletPath(); + + if (url.contains("home") || url.contains("account") || url.contains("portfolio") || url.contains("quote") || url.contains("order") + || url.contains("marketSummary")) { + System.out.println("JSF service error: User Not Logged in"); + response.sendRedirect("welcome.faces"); + return; + } + } + + chain.doFilter(req, resp/* wrapper */); + } + + /** + * @see Filter#destroy() + */ + @Override + public void destroy() { + this.filterConfig = null; + } + +} diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/jsf/LoginValidator.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/jsf/LoginValidator.java new file mode 100644 index 00000000..5c5c973c --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/jsf/LoginValidator.java @@ -0,0 +1,55 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.jsf; + +import java.util.regex.Matcher; +import java.util.regex.Pattern; + +import javax.faces.application.FacesMessage; +import javax.faces.component.UIComponent; +import javax.faces.context.FacesContext; +import javax.faces.validator.FacesValidator; +import javax.faces.validator.Validator; +import javax.faces.validator.ValidatorException; + +import com.ibm.websphere.samples.daytrader.util.Log; + +@SuppressWarnings("rawtypes") +@FacesValidator("loginValidator") +public class LoginValidator implements Validator{ + + static String loginRegex = "uid:\\d+"; + static Pattern pattern = Pattern.compile(loginRegex); + static Matcher matcher; + + // Simple JSF validator to make sure username starts with uid: and at least 1 number. + public LoginValidator() { + } + + @Override + public void validate(FacesContext context, UIComponent component, Object value) throws ValidatorException { + Log.trace("LoginValidator.validate","Validating submitted login name -- " + value.toString()); + + matcher = pattern.matcher(value.toString()); + + if (!matcher.matches()) { + FacesMessage msg = new FacesMessage("Username validation failed. Please provide username in this format: uid:#"); + msg.setSeverity(FacesMessage.SEVERITY_ERROR); + + throw new ValidatorException(msg); + } + } +} \ No newline at end of file diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/jsf/MarketSummaryJSF.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/jsf/MarketSummaryJSF.java new file mode 100644 index 00000000..3677753a --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/jsf/MarketSummaryJSF.java @@ -0,0 +1,166 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.jsf; + +import java.math.BigDecimal; +import java.math.RoundingMode; +import java.util.Collection; +import java.util.Date; +import java.util.Iterator; + +import javax.annotation.PostConstruct; +import javax.enterprise.context.RequestScoped; +import javax.enterprise.inject.Any; +import javax.enterprise.inject.Instance; +import javax.inject.Inject; +import javax.inject.Named; + +import com.ibm.websphere.samples.daytrader.beans.MarketSummaryDataBean; +import com.ibm.websphere.samples.daytrader.entities.QuoteDataBean; +import com.ibm.websphere.samples.daytrader.interfaces.Trace; +import com.ibm.websphere.samples.daytrader.interfaces.TradeServices; +import com.ibm.websphere.samples.daytrader.util.FinancialUtils; +import com.ibm.websphere.samples.daytrader.util.TradeConfig; +import com.ibm.websphere.samples.daytrader.util.TradeRunTimeModeLiteral; + +@Named("marketdata") +@RequestScoped +@Trace +public class MarketSummaryJSF { + + private TradeServices tradeAction; + + private BigDecimal TSIA; + private BigDecimal openTSIA; + private double volume; + private QuoteData[] topGainers; + private QuoteData[] topLosers; + private Date summaryDate; + + // cache the gainPercent once computed for this bean + private BigDecimal gainPercent = null; + + @Inject + public MarketSummaryJSF(@Any Instance services) { + tradeAction = services.select(new TradeRunTimeModeLiteral(TradeConfig.getRunTimeModeNames()[TradeConfig.getRunTimeMode()])).get(); + } + + @PostConstruct + public void getMarketSummary() { + + try { + MarketSummaryDataBean marketSummaryData = tradeAction.getMarketSummary(); + setSummaryDate(marketSummaryData.getSummaryDate()); + setTSIA(marketSummaryData.getTSIA()); + setVolume(marketSummaryData.getVolume()); + setGainPercent(marketSummaryData.getGainPercent()); + + Collection topGainers = marketSummaryData.getTopGainers(); + + Iterator gainers = topGainers.iterator(); + int count = 0; + QuoteData[] gainerjsfs = new QuoteData[5]; + + while (gainers.hasNext() && (count < 5)) { + QuoteDataBean quote = (QuoteDataBean) gainers.next(); + QuoteData r = new QuoteData(quote.getPrice(), quote.getOpen(), quote.getSymbol()); + gainerjsfs[count] = r; + count++; + } + + setTopGainers(gainerjsfs); + + Collection topLosers = marketSummaryData.getTopLosers(); + + QuoteData[] loserjsfs = new QuoteData[5]; + count = 0; + Iterator losers = topLosers.iterator(); + + while (losers.hasNext() && (count < 5)) { + QuoteDataBean quote = (QuoteDataBean) losers.next(); + QuoteData r = new QuoteData(quote.getPrice(), quote.getOpen(), quote.getSymbol()); + loserjsfs[count] = r; + count++; + } + + setTopLosers(loserjsfs); + + } catch (Exception e) { + e.printStackTrace(); + } + } + + public void setTSIA(BigDecimal tSIA) { + TSIA = tSIA; + } + + public BigDecimal getTSIA() { + return TSIA; + } + + public void setOpenTSIA(BigDecimal openTSIA) { + this.openTSIA = openTSIA; + } + + public BigDecimal getOpenTSIA() { + return openTSIA; + } + + public void setVolume(double volume) { + this.volume = volume; + } + + public double getVolume() { + return volume; + } + + public void setTopGainers(QuoteData[] topGainers) { + this.topGainers = topGainers; + } + + public QuoteData[] getTopGainers() { + return topGainers; + } + + public void setTopLosers(QuoteData[] topLosers) { + this.topLosers = topLosers; + } + + public QuoteData[] getTopLosers() { + return topLosers; + } + + public void setSummaryDate(Date summaryDate) { + this.summaryDate = summaryDate; + } + + public Date getSummaryDate() { + return summaryDate; + } + + public void setGainPercent(BigDecimal gainPercent) { + this.gainPercent = gainPercent.setScale(2,RoundingMode.HALF_UP); + } + + public BigDecimal getGainPercent() { + return gainPercent; + } + + public String getGainPercentHTML() { + return FinancialUtils.printGainPercentHTML(gainPercent); + } + +} diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/jsf/OrderData.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/jsf/OrderData.java new file mode 100644 index 00000000..c05f810c --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/jsf/OrderData.java @@ -0,0 +1,140 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.jsf; + +import java.math.BigDecimal; +import java.util.Date; + +public class OrderData { + private Integer orderID; + private String orderStatus; + private Date openDate; + private Date completionDate; + private BigDecimal orderFee; + private String orderType; + private double quantity; + private String symbol; + private BigDecimal total; + private BigDecimal price; + + public OrderData(Integer orderID, String orderStatus, Date openDate, Date completeDate, BigDecimal orderFee, String orderType, double quantity, + String symbol) { + this.orderID = orderID; + this.completionDate = completeDate; + this.openDate = openDate; + this.orderFee = orderFee; + this.orderType = orderType; + this.orderStatus = orderStatus; + this.quantity = quantity; + this.symbol = symbol; + } + + public OrderData(Integer orderID, String orderStatus, Date openDate, Date completeDate, BigDecimal orderFee, String orderType, double quantity, + String symbol, BigDecimal price) { + this.orderID = orderID; + this.completionDate = completeDate; + this.openDate = openDate; + this.orderFee = orderFee; + this.orderType = orderType; + this.orderStatus = orderStatus; + this.quantity = quantity; + this.symbol = symbol; + this.price = price; + this.total = price.multiply(new BigDecimal(quantity)); + + } + + public void setOrderID(Integer orderID) { + this.orderID = orderID; + } + + public Integer getOrderID() { + return orderID; + } + + public void setOrderStatus(String orderStatus) { + this.orderStatus = orderStatus; + } + + public String getOrderStatus() { + return orderStatus; + } + + public void setOpenDate(Date openDate) { + this.openDate = openDate; + } + + public Date getOpenDate() { + return openDate; + } + + public void setCompletionDate(Date completionDate) { + this.completionDate = completionDate; + } + + public Date getCompletionDate() { + return completionDate; + } + + public void setOrderFee(BigDecimal orderFee) { + this.orderFee = orderFee; + } + + public BigDecimal getOrderFee() { + return orderFee; + } + + public void setOrderType(String orderType) { + this.orderType = orderType; + } + + public String getOrderType() { + return orderType; + } + + public void setQuantity(double quantity) { + this.quantity = quantity; + } + + public double getQuantity() { + return quantity; + } + + public void setSymbol(String symbol) { + this.symbol = symbol; + } + + public String getSymbol() { + return symbol; + } + + public void setTotal(BigDecimal total) { + this.total = total; + } + + public BigDecimal getTotal() { + return total; + } + + public void setPrice(BigDecimal price) { + this.price = price; + } + + public BigDecimal getPrice() { + return price; + } + +} diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/jsf/OrderDataJSF.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/jsf/OrderDataJSF.java new file mode 100644 index 00000000..8f9c70dd --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/jsf/OrderDataJSF.java @@ -0,0 +1,106 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.jsf; + +import java.math.BigDecimal; +import java.util.ArrayList; + +import javax.annotation.PostConstruct; +import javax.enterprise.inject.Any; +import javax.enterprise.inject.Instance; +import javax.faces.context.ExternalContext; +import javax.inject.Inject; +import javax.inject.Named; +import javax.servlet.http.HttpSession; + +import com.ibm.websphere.samples.daytrader.entities.OrderDataBean; +import com.ibm.websphere.samples.daytrader.interfaces.Trace; +import com.ibm.websphere.samples.daytrader.interfaces.TradeServices; +import com.ibm.websphere.samples.daytrader.util.TradeConfig; +import com.ibm.websphere.samples.daytrader.util.TradeRunTimeModeLiteral; + +@Named("orderdata") +@Trace +public class OrderDataJSF { + + @Inject + private ExternalContext context; + + private TradeServices tradeAction; + + private OrderData[] allOrders; + private OrderData orderData; + + @Inject + public OrderDataJSF(@Any Instance services) { + tradeAction = services.select(new TradeRunTimeModeLiteral(TradeConfig.getRunTimeModeNames()[TradeConfig.getRunTimeMode()])).get(); + } + + public void getAllOrder() { + try { + HttpSession session = (HttpSession) context.getSession(true); + String userID = (String) session.getAttribute("uidBean"); + + ArrayList orderDataBeans = (TradeConfig.getLongRun() ? new ArrayList() : (ArrayList) tradeAction.getOrders(userID)); + OrderData[] orders = new OrderData[orderDataBeans.size()]; + + int count = 0; + + for (Object order : orderDataBeans) { + OrderData r = new OrderData(((OrderDataBean) order).getOrderID(), ((OrderDataBean) order).getOrderStatus(), + ((OrderDataBean) order).getOpenDate(), ((OrderDataBean) order).getCompletionDate(), ((OrderDataBean) order).getOrderFee(), + ((OrderDataBean) order).getOrderType(), ((OrderDataBean) order).getQuantity(), ((OrderDataBean) order).getSymbol()); + r.setPrice(((OrderDataBean) order).getPrice()); + r.setTotal(r.getPrice().multiply(new BigDecimal(r.getQuantity()))); + orders[count] = r; + count++; + } + + setAllOrders(orders); + } catch (Exception e) { + e.printStackTrace(); + } + + } + + @PostConstruct + public void getOrder() { + + + HttpSession session = (HttpSession) context.getSession(true); + OrderData order = (OrderData) session.getAttribute("orderData"); + + if (order != null) { + setOrderData(order); + } + } + + public void setAllOrders(OrderData[] allOrders) { + this.allOrders = allOrders; + } + + public OrderData[] getAllOrders() { + return allOrders; + } + + public void setOrderData(OrderData orderData) { + this.orderData = orderData; + } + + public OrderData getOrderData() { + return orderData; + } +} diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/jsf/PortfolioJSF.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/jsf/PortfolioJSF.java new file mode 100644 index 00000000..34a68d17 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/jsf/PortfolioJSF.java @@ -0,0 +1,235 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.jsf; + +import java.math.BigDecimal; +import java.util.ArrayList; +import java.util.Collection; +import java.util.Iterator; + +import javax.annotation.PostConstruct; +import javax.enterprise.context.RequestScoped; +import javax.enterprise.inject.Any; +import javax.enterprise.inject.Instance; +import javax.faces.component.html.HtmlDataTable; +import javax.faces.context.ExternalContext; +import javax.inject.Inject; +import javax.inject.Named; +import javax.servlet.http.HttpSession; + +import javax.validation.constraints.PositiveOrZero; + +import com.ibm.websphere.samples.daytrader.entities.HoldingDataBean; +import com.ibm.websphere.samples.daytrader.entities.OrderDataBean; +import com.ibm.websphere.samples.daytrader.entities.QuoteDataBean; +import com.ibm.websphere.samples.daytrader.interfaces.Trace; +import com.ibm.websphere.samples.daytrader.interfaces.TradeServices; +import com.ibm.websphere.samples.daytrader.util.FinancialUtils; +import com.ibm.websphere.samples.daytrader.util.TradeConfig; +import com.ibm.websphere.samples.daytrader.util.TradeRunTimeModeLiteral; + +@Named("portfolio") +@RequestScoped +@Trace +public class PortfolioJSF { + @Inject + private ExternalContext context; + + private TradeServices tradeAction; + + private BigDecimal balance; + private BigDecimal openBalance; + + @PositiveOrZero + private Integer numberHoldings; + + private BigDecimal holdingsTotal; + private BigDecimal sumOfCashHoldings; + private BigDecimal totalGain = new BigDecimal(0.0); + private BigDecimal totalValue = new BigDecimal(0.0); + private BigDecimal totalBasis = new BigDecimal(0.0); + private BigDecimal totalGainPercent = new BigDecimal(0.0); + private ArrayList holdingDatas; + private HtmlDataTable dataTable; + + @Inject + public PortfolioJSF(@Any Instance services) { + tradeAction = services.select(new TradeRunTimeModeLiteral(TradeConfig.getRunTimeModeNames()[TradeConfig.getRunTimeMode()])).get(); + } + + @PostConstruct + public void getPortfolio() { + try { + + HttpSession session = (HttpSession) context.getSession(true); + String userID = (String) session.getAttribute("uidBean"); + Collection holdingDataBeans = tradeAction.getHoldings(userID); + + numberHoldings = holdingDataBeans.size(); + + // Walk through the collection of user holdings and creating a list + // of quotes + if (holdingDataBeans.size() > 0) { + Iterator it = holdingDataBeans.iterator(); + holdingDatas = new ArrayList(holdingDataBeans.size()); + + while (it.hasNext()) { + HoldingDataBean holdingData = (HoldingDataBean) it.next(); + QuoteDataBean quoteData = tradeAction.getQuote(holdingData.getQuoteID()); + + BigDecimal basis = holdingData.getPurchasePrice().multiply(new BigDecimal(holdingData.getQuantity())); + BigDecimal marketValue = quoteData.getPrice().multiply(new BigDecimal(holdingData.getQuantity())); + totalBasis = totalBasis.add(basis); + totalValue = totalValue.add(marketValue); + BigDecimal gain = marketValue.subtract(basis); + totalGain = totalGain.add(gain); + + HoldingData h = new HoldingData(); + h.setHoldingID(holdingData.getHoldingID()); + h.setPurchaseDate(holdingData.getPurchaseDate()); + h.setQuoteID(holdingData.getQuoteID()); + h.setQuantity(holdingData.getQuantity()); + h.setPurchasePrice(holdingData.getPurchasePrice()); + h.setBasis(basis); + h.setGain(gain); + h.setMarketValue(marketValue); + h.setPrice(quoteData.getPrice()); + holdingDatas.add(h); + + } + // dataTable + setTotalGainPercent(FinancialUtils.computeGainPercent(totalValue, totalBasis)); + + } + } catch (Exception e) { + e.printStackTrace(); + } + } + + public String sell() { + + HttpSession session = (HttpSession) context.getSession(true); + String userID = (String) session.getAttribute("uidBean"); + + OrderDataBean orderDataBean = null; + HoldingData holdingData = (HoldingData) dataTable.getRowData(); + + try { + orderDataBean = tradeAction.sell(userID, holdingData.getHoldingID(), TradeConfig.getOrderProcessingMode()); + holdingDatas.remove(holdingData); + } catch (Exception e) { + e.printStackTrace(); + } + + OrderData orderData = new OrderData(orderDataBean.getOrderID(), orderDataBean.getOrderStatus(), orderDataBean.getOpenDate(), + orderDataBean.getCompletionDate(), orderDataBean.getOrderFee(), orderDataBean.getOrderType(), orderDataBean.getQuantity(), + orderDataBean.getSymbol()); + session.setAttribute("orderData", orderData); + return "sell"; + } + + public void setDataTable(HtmlDataTable dataTable) { + this.dataTable = dataTable; + } + + public HtmlDataTable getDataTable() { + return dataTable; + } + + public void setBalance(BigDecimal balance) { + this.balance = balance; + } + + public BigDecimal getBalance() { + return balance; + } + + public void setOpenBalance(BigDecimal openBalance) { + this.openBalance = openBalance; + } + + public BigDecimal getOpenBalance() { + return openBalance; + } + + public void setHoldingsTotal(BigDecimal holdingsTotal) { + this.holdingsTotal = holdingsTotal; + } + + public BigDecimal getHoldingsTotal() { + return holdingsTotal; + } + + public void setSumOfCashHoldings(BigDecimal sumOfCashHoldings) { + this.sumOfCashHoldings = sumOfCashHoldings; + } + + public BigDecimal getSumOfCashHoldings() { + return sumOfCashHoldings; + } + + public void setNumberHoldings(Integer numberHoldings) { + this.numberHoldings = numberHoldings; + } + + public Integer getNumberHoldings() { + return numberHoldings; + } + + public void setTotalGain(BigDecimal totalGain) { + this.totalGain = totalGain; + } + + public BigDecimal getTotalGain() { + return totalGain; + } + + public void setTotalValue(BigDecimal totalValue) { + this.totalValue = totalValue; + } + + public BigDecimal getTotalValue() { + return totalValue; + } + + public void setTotalBasis(BigDecimal totalBasis) { + this.totalBasis = totalBasis; + } + + public BigDecimal getTotalBasis() { + return totalBasis; + } + + public void setHoldingDatas(ArrayList holdingDatas) { + this.holdingDatas = holdingDatas; + } + + public ArrayList getHoldingDatas() { + return holdingDatas; + } + + public void setTotalGainPercent(BigDecimal totalGainPercent) { + this.totalGainPercent = totalGainPercent; + } + + public BigDecimal getTotalGainPercent() { + return totalGainPercent; + } + + public String getTotalGainPercentHTML() { + return FinancialUtils.printGainPercentHTML(totalGainPercent); + } +} diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/jsf/QuoteData.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/jsf/QuoteData.java new file mode 100644 index 00000000..ad3425b7 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/jsf/QuoteData.java @@ -0,0 +1,167 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.jsf; + +import java.math.BigDecimal; +import java.text.DecimalFormat; + +import com.ibm.websphere.samples.daytrader.util.FinancialUtils; + +public class QuoteData { + private BigDecimal price; + private BigDecimal open; + private String symbol; + private BigDecimal high; + private BigDecimal low; + private String companyName; + private double volume; + private double change; + private String range; + private BigDecimal gainPercent; + private BigDecimal gain; + + public QuoteData(BigDecimal price, BigDecimal open, String symbol) { + this.open = open; + this.price = price; + this.symbol = symbol; + this.change = price.subtract(open).setScale(2).doubleValue(); + } + + public QuoteData(BigDecimal open, BigDecimal price, String symbol, BigDecimal high, BigDecimal low, String companyName, Double volume, Double change) { + this.open = open; + this.price = price; + this.symbol = symbol; + this.high = high; + this.low = low; + this.companyName = companyName; + this.volume = volume; + this.change = change; + this.range = high.toString() + "-" + low.toString(); + this.gainPercent = FinancialUtils.computeGainPercent(price, open).setScale(2); + this.gain = FinancialUtils.computeGain(price, open).setScale(2); + } + + public void setSymbol(String symbol) { + this.symbol = symbol; + } + + public String getSymbol() { + return symbol; + } + + public void setPrice(BigDecimal price) { + this.price = price; + } + + public BigDecimal getPrice() { + return price; + } + + public void setOpen(BigDecimal open) { + this.open = open; + } + + public BigDecimal getOpen() { + return open; + } + + public void setHigh(BigDecimal high) { + this.high = high; + } + + public BigDecimal getHigh() { + return high; + } + + public void setLow(BigDecimal low) { + this.low = low; + } + + public BigDecimal getLow() { + return low; + } + + public void setCompanyName(String companyName) { + this.companyName = companyName; + } + + public String getCompanyName() { + return companyName; + } + + public void setVolume(double volume) { + this.volume = volume; + } + + public double getVolume() { + return volume; + } + + public void setChange(double change) { + this.change = change; + } + + public double getChange() { + return change; + } + + public void setRange(String range) { + this.range = range; + } + + public String getRange() { + return range; + } + + public void setGainPercent(BigDecimal gainPercent) { + this.gainPercent = gainPercent.setScale(2); + } + + public BigDecimal getGainPercent() { + return gainPercent; + } + + public void setGain(BigDecimal gain) { + this.gain = gain; + } + + public BigDecimal getGain() { + return gain; + } + + public String getGainPercentHTML() { + return FinancialUtils.printGainPercentHTML(gainPercent); + } + + public String getGainHTML() { + return FinancialUtils.printGainHTML(gain); + } + + public String getChangeHTML() { + String htmlString, arrow; + if (change < 0.0) { + htmlString = ""; + arrow = "arrowdown.gif"; + } else { + htmlString = ""; + arrow = "arrowup.gif"; + } + DecimalFormat df = new DecimalFormat("####0.00"); + + htmlString += df.format(change) + ""; + return htmlString; + } +} diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/jsf/QuoteJSF.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/jsf/QuoteJSF.java new file mode 100644 index 00000000..f8c5d7c2 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/jsf/QuoteJSF.java @@ -0,0 +1,146 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.jsf; + +import javax.annotation.PostConstruct; +import javax.enterprise.context.RequestScoped; +import javax.enterprise.inject.Any; +import javax.enterprise.inject.Instance; +import javax.faces.component.html.HtmlDataTable; +import javax.faces.context.ExternalContext; +import javax.inject.Inject; +import javax.inject.Named; +import javax.servlet.http.HttpSession; + +import com.ibm.websphere.samples.daytrader.entities.OrderDataBean; +import com.ibm.websphere.samples.daytrader.entities.QuoteDataBean; +import com.ibm.websphere.samples.daytrader.interfaces.Trace; +import com.ibm.websphere.samples.daytrader.interfaces.TradeServices; +import com.ibm.websphere.samples.daytrader.util.Log; +import com.ibm.websphere.samples.daytrader.util.TradeConfig; +import com.ibm.websphere.samples.daytrader.util.TradeRunTimeModeLiteral; + +@Named("quotedata") +@RequestScoped +@Trace +public class QuoteJSF { + + @Inject + private ExternalContext context; + + private TradeServices tradeAction; + + private QuoteData[] quotes; + private String symbols = null; + private HtmlDataTable dataTable; + private Integer quantity = 100; + + @Inject + public QuoteJSF(@Any Instance services) { + tradeAction = services.select(new TradeRunTimeModeLiteral(TradeConfig.getRunTimeModeNames()[TradeConfig.getRunTimeMode()])).get(); + } + + @PostConstruct + public void getAllQuotes() { + getQuotesBySymbols(); + } + + public String getQuotesBySymbols() { + HttpSession session = (HttpSession) context.getSession(true); + + if (symbols == null && (session.getAttribute("symbols") == null)) { + setSymbols("s:0,s:1,s:2,s:3,s:4"); + session.setAttribute("symbols", getSymbols()); + } else if (symbols == null && session.getAttribute("symbols") != null) { + setSymbols((String) session.getAttribute("symbols")); + } + + else { + session.setAttribute("symbols", getSymbols()); + } + + java.util.StringTokenizer st = new java.util.StringTokenizer(symbols, " ,"); + QuoteData[] quoteDatas = new QuoteData[st.countTokens()]; + int count = 0; + + while (st.hasMoreElements()) { + String symbol = st.nextToken(); + + try { + QuoteDataBean quoteData = tradeAction.getQuote(symbol); + quoteDatas[count] = new QuoteData(quoteData.getOpen(), quoteData.getPrice(), quoteData.getSymbol(), quoteData.getHigh(), quoteData.getLow(), + quoteData.getCompanyName(), quoteData.getVolume(), quoteData.getChange()); + count++; + } catch (Exception e) { + Log.error(e.toString()); + } + } + setQuotes(quoteDatas); + return "quotes"; + } + + public String buy() { + HttpSession session = (HttpSession) context.getSession(true); + String userID = (String) session.getAttribute("uidBean"); + QuoteData quoteData = (QuoteData) dataTable.getRowData(); + OrderDataBean orderDataBean; + + try { + orderDataBean = tradeAction.buy(userID, quoteData.getSymbol(), new Double(this.quantity).doubleValue(), TradeConfig.getOrderProcessingMode()); + + OrderData orderData = new OrderData(orderDataBean.getOrderID(), orderDataBean.getOrderStatus(), orderDataBean.getOpenDate(), + orderDataBean.getCompletionDate(), orderDataBean.getOrderFee(), orderDataBean.getOrderType(), orderDataBean.getQuantity(), + orderDataBean.getSymbol()); + session.setAttribute("orderData", orderData); + } catch (Exception e) { + Log.error(e.toString()); + e.printStackTrace(); + } + return "buy"; + } + + public void setQuotes(QuoteData[] quotes) { + this.quotes = quotes; + } + + public QuoteData[] getQuotes() { + return quotes; + } + + public void setSymbols(String symbols) { + this.symbols = symbols; + } + + public String getSymbols() { + return symbols; + } + + public void setDataTable(HtmlDataTable dataTable) { + this.dataTable = dataTable; + } + + public HtmlDataTable getDataTable() { + return dataTable; + } + + public void setQuantity(Integer quantity) { + this.quantity = quantity; + } + + public Integer getQuantity() { + return quantity; + } +} diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/jsf/TradeAppJSF.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/jsf/TradeAppJSF.java new file mode 100644 index 00000000..b8271641 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/jsf/TradeAppJSF.java @@ -0,0 +1,298 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.jsf; + +import java.io.Serializable; +import java.math.BigDecimal; + +import javax.enterprise.context.SessionScoped; +import javax.enterprise.inject.Any; +import javax.enterprise.inject.Instance; +import javax.faces.context.ExternalContext; +import javax.inject.Inject; +import javax.inject.Named; +import javax.servlet.ServletException; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpSession; +import javax.validation.constraints.Email; +import javax.validation.constraints.NotBlank; + +import com.ibm.websphere.samples.daytrader.entities.AccountDataBean; +import com.ibm.websphere.samples.daytrader.entities.AccountProfileDataBean; +import com.ibm.websphere.samples.daytrader.interfaces.Trace; +import com.ibm.websphere.samples.daytrader.interfaces.TradeServices; +import com.ibm.websphere.samples.daytrader.util.Log; +import com.ibm.websphere.samples.daytrader.util.TradeConfig; +import com.ibm.websphere.samples.daytrader.util.TradeRunTimeModeLiteral; + +@Named("tradeapp") +@SessionScoped +@Trace +public class TradeAppJSF implements Serializable { + + @Inject ExternalContext context; + + private TradeServices tradeAction; + + private static final long serialVersionUID = 2L; + + @NotBlank + private String userID = "uid:0"; + + @NotBlank + private String password = "xxx"; + + @NotBlank + private String cpassword; + + @NotBlank + private String results; + + @NotBlank + private String fullname; + + @NotBlank + private String address; + + @Email + private String email; + + @NotBlank + private String ccn; + + @NotBlank + private String money; + + @Inject + public TradeAppJSF(@Any Instance services) { + tradeAction = services.select(new TradeRunTimeModeLiteral(TradeConfig.getRunTimeModeNames()[TradeConfig.getRunTimeMode()])).get(); + } + + public String login() { + try { + AccountDataBean accountData = tradeAction.login(userID, password); + + AccountProfileDataBean accountProfileData = tradeAction.getAccountProfileData(userID); + if (accountData != null) { + HttpSession session = (HttpSession) context.getSession(true); + + session.setAttribute("uidBean", userID); + session.setAttribute("sessionCreationDate", new java.util.Date()); + setResults("Ready to Trade"); + + // Get account profile information + setAddress(accountProfileData.getAddress()); + setCcn(accountProfileData.getCreditCard()); + setEmail(accountProfileData.getEmail()); + setFullname(accountProfileData.getFullName()); + setCpassword(accountProfileData.getPassword()); + return "Ready to Trade"; + } else { + Log.log("TradeServletAction.doLogin(...)", "Error finding account for user " + userID + "", + "user entered a bad username or the database is not populated"); + throw new NullPointerException("User does not exist or password is incorrect!"); + } + } + + catch (Exception se) { + // Go to welcome page + setResults("Could not find account"); + return "welcome"; + } + } + + public String register() { + + // Validate user passwords match and are atleast 1 char in length + try { + if ((password.equals(cpassword)) && (password.length() >= 1)) { + AccountDataBean accountData = tradeAction.register(userID, password, fullname, address, email, ccn, new BigDecimal(money)); + + if (accountData == null) { + setResults("Registration operation failed;"); + // Go to register page + return "Registration operation failed"; + + } else { + login(); + setResults("Registration operation succeeded; Account " + accountData.getAccountID() + " has been created."); + return "Registration operation succeeded"; + } + } + + else { + // Password validation failed + setResults("Registration operation failed, your passwords did not match"); + // Go to register page + return "Registration operation failed"; + } + } + + catch (Exception e) { + // log the exception with error page + Log.log("TradeServletAction.doRegister(...)" + " exception user =" + userID); + try { + throw new Exception("TradeServletAction.doRegister(...)" + " exception user =" + userID, e); + } catch (Exception e1) { + e1.printStackTrace(); + } + + } + return "Registration operation succeeded"; + } + + public String updateProfile() { + + // First verify input data + boolean doUpdate = true; + + if (password.equals(cpassword) == false) { + results = "Update profile error: passwords do not match"; + doUpdate = false; + } + + AccountProfileDataBean accountProfileData = new AccountProfileDataBean(userID, password, fullname, address, email, ccn); + + try { + if (doUpdate) { + accountProfileData = tradeAction.updateAccountProfile(accountProfileData); + results = "Account profile update successful"; + } + + } catch (java.lang.IllegalArgumentException e) { + // this is a user error so I will + // forward them to another page rather than throw a 500 + setResults("invalid argument, check userID is correct, and the database is populated" + userID); + Log.error(e, "TradeServletAction.doAccount(...)", "illegal argument, information should be in exception string", + "treating this as a user error and forwarding on to a new page"); + } catch (Exception e) { + // log the exception with error page + e.printStackTrace(); + } + // Go to account.xhtml + return "Go to account"; + } + + public String logout() { + + try { + setResults(""); + tradeAction.logout(userID); + } catch (java.lang.IllegalArgumentException e) { + // this is a user error so I will + // forward them to another page, at the end of the page. + setResults("illegal argument:" + e.getMessage()); + + // log the exception with an error level of 3 which means, handled + // exception but would invalidate a automation run + Log.error(e, "TradeServletAction.doLogout(...)", "illegal argument, information should be in exception string", + "treating this as a user error and forwarding on to a new page"); + } catch (Exception e) { + // log the exception and foward to a error page + Log.error(e, "TradeAppJSF.logout():", "Error logging out" + userID, "fowarding to an error page"); + } + + HttpSession session = (HttpSession)context.getSession(false); + + if (session != null) { + session.invalidate(); + } + + // Added to actually remove a user from the authentication cache + try { + ((HttpServletRequest) context.getRequest()).logout(); + } catch (ServletException e) { + Log.error(e, "TradeAppJSF.logout():", "Error logging out request" + userID, "fowarding to an error page"); + } + + // Go to welcome page + return "welcome"; + } + + public String getUserID() { + return userID; + } + + public void setUserID(String userID) { + this.userID = userID; + } + + public String getPassword() { + return password; + } + + public void setPassword(String password) { + this.password = password; + } + + public String getCpassword() { + return cpassword; + } + + public void setCpassword(String cpassword) { + this.cpassword = cpassword; + } + + public String getFullname() { + return fullname; + } + + public void setFullname(String fullname) { + this.fullname = fullname; + } + + public String getResults() { + String tempResults=results; + results=""; + return tempResults; + } + + public void setResults(String results) { + this.results = results; + } + + public String getAddress() { + return address; + } + + public void setAddress(String address) { + this.address = address; + } + + public String getEmail() { + return email; + } + + public void setEmail(String email) { + this.email = email; + } + + public String getCcn() { + return ccn; + } + + public void setCcn(String ccn) { + this.ccn = ccn; + } + + public String getMoney() { + return money; + } + + public void setMoney(String money) { + this.money = money; + } +}; diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/jsf/TradeConfigJSF.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/jsf/TradeConfigJSF.java new file mode 100644 index 00000000..fd7cb859 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/jsf/TradeConfigJSF.java @@ -0,0 +1,331 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.jsf; + +import javax.enterprise.context.RequestScoped; +import javax.faces.context.ExternalContext; +import javax.inject.Inject; +import javax.inject.Named; +import javax.servlet.http.HttpSession; + +import com.ibm.websphere.samples.daytrader.beans.RunStatsDataBean; +import com.ibm.websphere.samples.daytrader.impl.direct.TradeDirectDBUtils; +import com.ibm.websphere.samples.daytrader.util.Log; +import com.ibm.websphere.samples.daytrader.util.TradeConfig; + +@Named("tradeconfig") +@RequestScoped +public class TradeConfigJSF { + + @Inject + private ExternalContext context; + + @Inject + TradeDirectDBUtils dbUtils; + + private String runtimeMode = TradeConfig.getRunTimeModeNames()[TradeConfig.getRunTimeMode()]; + private String orderProcessingMode = TradeConfig.getOrderProcessingModeNames()[TradeConfig.getOrderProcessingMode()]; + private int maxUsers = TradeConfig.getMAX_USERS(); + private int maxQuotes = TradeConfig.getMAX_QUOTES(); + private int marketSummaryInterval = TradeConfig.getMarketSummaryInterval(); + private String webInterface = TradeConfig.getWebInterfaceNames()[TradeConfig.getWebInterface()]; + private int primIterations = TradeConfig.getPrimIterations(); + private int listQuotePriceChangeFrequency = TradeConfig.getListQuotePriceChangeFrequency(); + private boolean publishQuotePriceChange = TradeConfig.getPublishQuotePriceChange(); + private boolean longRun = TradeConfig.getLongRun(); + private boolean displayOrderAlerts = TradeConfig.getDisplayOrderAlerts(); + private String[] runtimeModeList = TradeConfig.getRunTimeModeNames(); + private String[] orderProcessingModeList = TradeConfig.getOrderProcessingModeNames(); + + private String[] webInterfaceList = TradeConfig.getWebInterfaceNames(); + private String result = ""; + + public void updateConfig() { + String currentConfigStr = "\n\n########## Trade configuration update. Current config:\n\n"; + + currentConfigStr += "\t\tRunTimeMode:\t\t\t" + TradeConfig.getRunTimeModeNames()[TradeConfig.getRunTimeMode()] + "\n"; + + String orderProcessingModeStr = this.orderProcessingMode; + if (orderProcessingModeStr != null) { + try { + for (int i = 0; i < orderProcessingModeList.length; i++) { + if (orderProcessingModeStr.equals(orderProcessingModeList[i])) { + TradeConfig.setOrderProcessingMode(i); + } + } + } catch (Exception e) { + Log.error(e, "TradeConfigJSF.updateConfig(..): minor exception caught", "trying to set orderProcessing to " + orderProcessingModeStr, + "reverting to current value"); + + } // If the value is bad, simply revert to current + } + currentConfigStr += "\t\tOrderProcessingMode:\t\t" + TradeConfig.getOrderProcessingModeNames()[TradeConfig.getOrderProcessingMode()] + "\n"; + + String webInterfaceStr = webInterface; + if (webInterfaceStr != null) { + try { + for (int i = 0; i < webInterfaceList.length; i++) { + if (webInterfaceStr.equals(webInterfaceList[i])) { + TradeConfig.setWebInterface(i); + } + } + } catch (Exception e) { + Log.error(e, "TradeConfigJSF.updateConfig(..): minor exception caught", "trying to set WebInterface to " + webInterfaceStr, + "reverting to current value"); + + } // If the value is bad, simply revert to current + } + currentConfigStr += "\t\tWeb Interface:\t\t\t" + TradeConfig.getWebInterfaceNames()[TradeConfig.getWebInterface()] + "\n"; + + TradeConfig.setMAX_USERS(maxUsers); + TradeConfig.setMAX_QUOTES(maxQuotes); + + currentConfigStr += "\t\tTrade Users:\t\t\t" + TradeConfig.getMAX_USERS() + "\n"; + currentConfigStr += "\t\tTrade Quotes:\t\t\t" + TradeConfig.getMAX_QUOTES() + "\n"; + + TradeConfig.setMarketSummaryInterval(marketSummaryInterval); + + currentConfigStr += "\t\tMarket Summary Interval:\t" + TradeConfig.getMarketSummaryInterval() + "\n"; + + TradeConfig.setPrimIterations(primIterations); + + currentConfigStr += "\t\tPrimitive Iterations:\t\t" + TradeConfig.getPrimIterations() + "\n"; + + TradeConfig.setPublishQuotePriceChange(publishQuotePriceChange); + currentConfigStr += "\t\tTradeStreamer MDB Enabled:\t" + TradeConfig.getPublishQuotePriceChange() + "\n"; + + TradeConfig.setListQuotePriceChangeFrequency(listQuotePriceChangeFrequency); + currentConfigStr += "\t\t% of trades on Websocket:\t" + TradeConfig.getListQuotePriceChangeFrequency() + "\n"; + + TradeConfig.setLongRun(longRun); + currentConfigStr += "\t\tLong Run Enabled:\t\t" + TradeConfig.getLongRun() + "\n"; + + TradeConfig.setDisplayOrderAlerts(displayOrderAlerts); + currentConfigStr += "\t\tDisplay Order Alerts:\t\t" + TradeConfig.getDisplayOrderAlerts() + "\n"; + + System.out.println(currentConfigStr); + setResult("DayTrader Configuration Updated"); + } + + public String resetTrade() { + RunStatsDataBean runStatsData = new RunStatsDataBean(); + TradeConfig currentConfig = new TradeConfig(); + HttpSession session = (HttpSession) context.getSession(true); + + + try { + runStatsData = dbUtils.resetTrade(false); + session.setAttribute("runStatsData", runStatsData); + session.setAttribute("tradeConfig", currentConfig); + result += "Trade Reset completed successfully"; + + } catch (Exception e) { + result += "Trade Reset Error - see log for details"; + session.setAttribute("result", result); + Log.error(e, result); + } + + return "stats"; + } + + public String populateDatabase() { + + try { + dbUtils.buildDB(new java.io.PrintWriter(System.out), null); + } catch (Exception e) { + e.printStackTrace(); + } + + result = "TradeBuildDB: **** DayTrader Database Built - " + TradeConfig.getMAX_USERS() + " users created, " + TradeConfig.getMAX_QUOTES() + + " quotes created. ****
    "; + result += "TradeBuildDB: **** Check System.Out for any errors. ****
    "; + + return "database"; + } + + public String buildDatabaseTables() { + try { + String dbProductName = null; + try { + dbProductName = dbUtils.checkDBProductName(); + } catch (Exception e) { + Log.error(e, "TradeBuildDB: Unable to check DB Product name"); + } + if (dbProductName == null) { + result += "TradeBuildDB: **** Unable to check DB Product name, please check Database/AppServer configuration and retry ****
    "; + return "database"; + } + + String ddlFile = null; + //Locate DDL file for the specified database + try { + result = result + "TradeBuildDB: **** Database Product detected: " + dbProductName + " ****
    "; + if (dbProductName.startsWith("DB2/")) { // if db is DB2 + ddlFile = "/dbscripts/db2/Table.ddl"; + } else if (dbProductName.startsWith("Apache Derby")) { //if db is Derby + ddlFile = "/dbscripts/derby/Table.ddl"; + } else if (dbProductName.startsWith("Oracle")) { // if the Db is Oracle + ddlFile = "/dbscripts/oracle/Table.ddl"; + } else { // Unsupported "Other" Database + ddlFile = "/dbscripts/other/Table.ddl"; + result = result + "TradeBuildDB: **** This Database is unsupported/untested use at your own risk ****
    "; + } + + result = result + "TradeBuildDB: **** The DDL file at path" + ddlFile + " will be used ****
    "; + } catch (Exception e) { + Log.error(e, "TradeBuildDB: Unable to locate DDL file for the specified database"); + result = result + "TradeBuildDB: **** Unable to locate DDL file for the specified database ****
    "; + return "database"; + } + + dbUtils.buildDB(new java.io.PrintWriter(System.out), context.getResourceAsStream(ddlFile)); + + result = result + "TradeBuildDB: **** DayTrader Database Created, Check System.Out for any errors. ****
    "; + + } catch (Exception e) { + e.printStackTrace(); + } + + // Go to configure.xhtml + return "database"; + } + + + + + public String getRuntimeMode() { + return runtimeMode; + } + + public void setRuntimeMode(String runtimeMode) { + this.runtimeMode = runtimeMode; + } + + public void setOrderProcessingMode(String orderProcessingMode) { + this.orderProcessingMode = orderProcessingMode; + } + + public String getOrderProcessingMode() { + return orderProcessingMode; + } + + + public void setMaxUsers(int maxUsers) { + this.maxUsers = maxUsers; + } + + public int getMaxUsers() { + return maxUsers; + } + + public void setmaxQuotes(int maxQuotes) { + this.maxQuotes = maxQuotes; + } + + public int getMaxQuotes() { + return maxQuotes; + } + + public void setMarketSummaryInterval(int marketSummaryInterval) { + this.marketSummaryInterval = marketSummaryInterval; + } + + public int getMarketSummaryInterval() { + return marketSummaryInterval; + } + + public void setPrimIterations(int primIterations) { + this.primIterations = primIterations; + } + + public int getPrimIterations() { + return primIterations; + } + + public void setPublishQuotePriceChange(boolean publishQuotePriceChange) { + this.publishQuotePriceChange = publishQuotePriceChange; + } + + public boolean isPublishQuotePriceChange() { + return publishQuotePriceChange; + } + + public void setListQuotePriceChangeFrequency(int listQuotePriceChangeFrequency) { + this.listQuotePriceChangeFrequency = listQuotePriceChangeFrequency; + } + + public int getListQuotePriceChangeFrequency() { + return listQuotePriceChangeFrequency; + } + + public void setDisplayOrderAlerts(boolean displayOrderAlerts) { + this.displayOrderAlerts = displayOrderAlerts; + } + + public boolean isDisplayOrderAlerts() { + return displayOrderAlerts; + } + + + public void setLongRun(boolean longRun) { + this.longRun = longRun; + } + + public boolean isLongRun() { + return longRun; + } + + public String[] getRuntimeModeList() { + return runtimeModeList; + } + + public void setRuntimeModeList(String[] runtimeModeList) { + this.runtimeModeList = runtimeModeList; + } + + public void setOrderProcessingModeList(String[] orderProcessingModeList) { + this.orderProcessingModeList = orderProcessingModeList; + } + + public String[] getOrderProcessingModeList() { + return orderProcessingModeList; + } + + public void setWebInterface(String webInterface) { + this.webInterface = webInterface; + } + + public String getWebInterface() { + return webInterface; + } + + public void setWebInterfaceList(String[] webInterfaceList) { + this.webInterfaceList = webInterfaceList; + } + + public String[] getWebInterfaceList() { + return webInterfaceList; + } + + public void setResult(String result) { + this.result = result; + } + + public String getResult() { + return result; + } + +} diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/ExplicitGC.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/ExplicitGC.java new file mode 100644 index 00000000..073a4709 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/ExplicitGC.java @@ -0,0 +1,158 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.prims; + +import java.io.IOException; + +import javax.servlet.ServletConfig; +import javax.servlet.ServletException; +import javax.servlet.ServletOutputStream; +import javax.servlet.annotation.WebServlet; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import com.ibm.websphere.samples.daytrader.util.Log; + +/** + * + * ExplicitGC invokes System.gc(). This allows one to gather min / max heap + * statistics. + * + */ +@WebServlet(name = "ExplicitGC", urlPatterns = { "/servlet/ExplicitGC" }) +public class ExplicitGC extends HttpServlet { + + private static final long serialVersionUID = -3758934393801102408L; + private static String initTime; + private static int hitCount; + + /** + * forwards post requests to the doGet method Creation date: (01/29/2006 + * 20:10:00 PM) + * + * @param res + * javax.servlet.http.HttpServletRequest + * @param res2 + * javax.servlet.http.HttpServletResponse + */ + @Override + public void doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { + doGet(req, res); + } + + /** + * this is the main method of the servlet that will service all get + * requests. + * + * @param request + * HttpServletRequest + * @param responce + * HttpServletResponce + **/ + @Override + public void doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { + try { + res.setContentType("text/html"); + + ServletOutputStream out = res.getOutputStream(); + hitCount++; + long totalMemory = Runtime.getRuntime().totalMemory(); + + long maxMemoryBeforeGC = Runtime.getRuntime().maxMemory(); + long freeMemoryBeforeGC = Runtime.getRuntime().freeMemory(); + long startTime = System.currentTimeMillis(); + + System.gc(); // Invoke the GC. + + long endTime = System.currentTimeMillis(); + long maxMemoryAfterGC = Runtime.getRuntime().maxMemory(); + long freeMemoryAfterGC = Runtime.getRuntime().freeMemory(); + + out.println("ExplicitGC" + + "

    Explicit Garbage Collection
    Init time : " + + initTime + + "

    Hit Count: " + + hitCount + + "
    " + + "" + + "" + + "
    Total Memory" + + totalMemory + + "
    " + + "" + + "" + + "" + + "" + + "" + + "" + + "" + + "" + + "" + + "
    " + + "Statistics before GC
    " + + "Max Memory" + + maxMemoryBeforeGC + + "
    " + + "Free Memory" + + freeMemoryBeforeGC + + "
    " + + "Used Memory" + + (totalMemory - freeMemoryBeforeGC) + + "
    Statistics after GC
    " + + "Max Memory" + + maxMemoryAfterGC + + "
    " + + "Free Memory" + + freeMemoryAfterGC + + "
    " + + "Used Memory" + + (totalMemory - freeMemoryAfterGC) + + "
    " + + "Total Time in GC" + + Float.toString((endTime - startTime) / 1000) + + "s
    " + ""); + } catch (Exception e) { + Log.error(e, "ExplicitGC.doGet(...): general exception caught"); + res.sendError(500, e.toString()); + + } + } + + /** + * returns a string of information about the servlet + * + * @return info String: contains info about the servlet + **/ + @Override + public String getServletInfo() { + return "Generate Explicit GC to VM"; + } + + /** + * called when the class is loaded to initialize the servlet + * + * @param config + * ServletConfig: + **/ + @Override + public void init(ServletConfig config) throws ServletException { + super.init(config); + initTime = new java.util.Date().toString(); + hitCount = 0; + + } +} diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingBean.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingBean.java new file mode 100644 index 00000000..1e8a05c7 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingBean.java @@ -0,0 +1,41 @@ +/** + * (C) Copyright IBM Corporation 2016. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.prims; + +/** + * Simple bean to get and set messages + */ + +public class PingBean { + + private String msg; + + /** + * returns the message contained in the bean + * + * @return message String + **/ + public String getMsg() { + return msg; + } + + /** + * sets the message contained in the bean param message String + **/ + public void setMsg(String s) { + msg = s; + } +} \ No newline at end of file diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingJDBCRead.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingJDBCRead.java new file mode 100644 index 00000000..46e7b49a --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingJDBCRead.java @@ -0,0 +1,135 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.prims; + +import java.io.IOException; + +import javax.inject.Inject; +import javax.servlet.ServletConfig; +import javax.servlet.ServletException; +import javax.servlet.annotation.WebServlet; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import com.ibm.websphere.samples.daytrader.entities.QuoteDataBean; +import com.ibm.websphere.samples.daytrader.interfaces.TradeJDBC; +import com.ibm.websphere.samples.daytrader.interfaces.TradeServices; +import com.ibm.websphere.samples.daytrader.util.Log; +import com.ibm.websphere.samples.daytrader.util.TradeConfig; + +/** + * + * PingJDBCReadPrepStmt uses a prepared statement for database read access. This + * primative uses + * {@link com.ibm.websphere.samples.daytrader.impl.direct.TradeDirect} to set the + * price of a random stock (generated by + * {@link com.ibm.websphere.samples.daytrader.util.TradeConfig}) through the use + * of prepared statements. + * + */ + +@WebServlet(name = "PingJDBCRead", urlPatterns = { "/servlet/PingJDBCRead" }) +public class PingJDBCRead extends HttpServlet { + + @Inject + @TradeJDBC + TradeServices trade; + + private static final long serialVersionUID = -8810390150632488526L; + private static String initTime; + private static int hitCount; + + /** + * forwards post requests to the doGet method Creation date: (11/6/2000 + * 10:52:39 AM) + * + * @param res + * javax.servlet.http.HttpServletRequest + * @param res2 + * javax.servlet.http.HttpServletResponse + */ + @Override + public void doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { + doGet(req, res); + } + + /** + * this is the main method of the servlet that will service all get + * requests. + * + * @param request + * HttpServletRequest + * @param responce + * HttpServletResponce + **/ + @Override + public void doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { + res.setContentType("text/html"); + java.io.PrintWriter out = res.getWriter(); + String symbol = null; + StringBuffer output = new StringBuffer(100); + + try { + // TradeJDBC uses prepared statements so I am going to make use of + // it's code. + + symbol = TradeConfig.rndSymbol(); + + QuoteDataBean quoteData = null; + int iter = TradeConfig.getPrimIterations(); + for (int ii = 0; ii < iter; ii++) { + quoteData = trade.getQuote(symbol); + } + + output.append("Ping JDBC Read w/ Prepared Stmt." + + "
    Ping JDBC Read w/ Prep Stmt:
    Init time : " + + initTime); + hitCount++; + output.append("
    Hit Count: " + hitCount); + output.append("
    Quote Information

    : " + quoteData.toHTML()); + output.append("
    "); + out.println(output.toString()); + } catch (Exception e) { + Log.error(e, "PingJDBCRead w/ Prep Stmt -- error getting quote for symbol", symbol); + res.sendError(500, "PingJDBCRead Exception caught: " + e.toString()); + } + + } + + /** + * returns a string of information about the servlet + * + * @return info String: contains info about the servlet + **/ + @Override + public String getServletInfo() { + return "Basic JDBC Read using a prepared statment, makes use of TradeJDBC class"; + } + + /** + * called when the class is loaded to initialize the servlet + * + * @param config + * ServletConfig: + **/ + @Override + public void init(ServletConfig config) throws ServletException { + super.init(config); + hitCount = 0; + initTime = new java.util.Date().toString(); + } +} \ No newline at end of file diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingJDBCRead2JSP.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingJDBCRead2JSP.java new file mode 100644 index 00000000..2e89277f --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingJDBCRead2JSP.java @@ -0,0 +1,128 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.prims; + +import java.io.IOException; + +import javax.inject.Inject; +import javax.servlet.ServletConfig; +import javax.servlet.ServletContext; +import javax.servlet.ServletException; +import javax.servlet.annotation.WebServlet; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import com.ibm.websphere.samples.daytrader.entities.QuoteDataBean; +import com.ibm.websphere.samples.daytrader.impl.direct.TradeDirect; +import com.ibm.websphere.samples.daytrader.interfaces.TradeJDBC; +import com.ibm.websphere.samples.daytrader.interfaces.TradeServices; +import com.ibm.websphere.samples.daytrader.util.Log; +import com.ibm.websphere.samples.daytrader.util.TradeConfig; + +/** + * + * PingJDBCReadPrepStmt uses a prepared statement for database read access. This + * primative uses + * {@link com.ibm.websphere.samples.daytrader.impl.direct.TradeDirect} to set the + * price of a random stock (generated by + * {@link com.ibm.websphere.samples.daytrader.util.TradeConfig}) through the use + * of prepared statements. + * + */ + +@WebServlet(name = "PingJDBCRead2JSP", urlPatterns = { "/servlet/PingJDBCRead2JSP" }) +public class PingJDBCRead2JSP extends HttpServlet { + + @Inject + @TradeJDBC + TradeServices trade; + + private static final long serialVersionUID = 1118803761565654806L; + + /** + * forwards post requests to the doGet method Creation date: (11/6/2000 + * 10:52:39 AM) + * + * @param res + * javax.servlet.http.HttpServletRequest + * @param res2 + * javax.servlet.http.HttpServletResponse + */ + @Override + public void doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { + doGet(req, res); + } + + /** + * this is the main method of the servlet that will service all get + * requests. + * + * @param request + * HttpServletRequest + * @param responce + * HttpServletResponce + **/ + @Override + public void doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { + String symbol = null; + QuoteDataBean quoteData = null; + ServletContext ctx = getServletConfig().getServletContext(); + + try { + + symbol = TradeConfig.rndSymbol(); + + int iter = TradeConfig.getPrimIterations(); + for (int ii = 0; ii < iter; ii++) { + quoteData = trade.getQuote(symbol); + } + + req.setAttribute("quoteData", quoteData); + // req.setAttribute("hitCount", hitCount); + // req.setAttribute("initTime", initTime); + + ctx.getRequestDispatcher("/quoteDataPrimitive.jsp").include(req, res); + } catch (Exception e) { + Log.error(e, "PingJDBCRead2JPS -- error getting quote for symbol", symbol); + res.sendError(500, "PingJDBCRead2JSP Exception caught: " + e.toString()); + } + + } + + /** + * returns a string of information about the servlet + * + * @return info String: contains info about the servlet + **/ + @Override + public String getServletInfo() { + return "Basic JDBC Read using a prepared statment forwarded to a JSP, makes use of TradeJDBC class"; + } + + /** + * called when the class is loaded to initialize the servlet + * + * @param config + * ServletConfig: + **/ + @Override + public void init(ServletConfig config) throws ServletException { + super.init(config); + // hitCount = 0; + // initTime = new java.util.Date().toString(); + } +} \ No newline at end of file diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingJDBCWrite.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingJDBCWrite.java new file mode 100644 index 00000000..de451091 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingJDBCWrite.java @@ -0,0 +1,140 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.prims; + +import java.io.IOException; +import java.math.BigDecimal; + +import javax.inject.Inject; +import javax.servlet.ServletConfig; +import javax.servlet.ServletException; +import javax.servlet.annotation.WebServlet; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import com.ibm.websphere.samples.daytrader.entities.QuoteDataBean; +import com.ibm.websphere.samples.daytrader.impl.direct.TradeDirect; +import com.ibm.websphere.samples.daytrader.interfaces.TradeJDBC; +import com.ibm.websphere.samples.daytrader.util.Log; +import com.ibm.websphere.samples.daytrader.util.TradeConfig; + +/** + * + * PingJDBCReadPrepStmt uses a prepared statement for database update. Statement + * parameters are set dynamically on each request. This primative uses + * {@link com.ibm.websphere.samples.daytrader.impl.direct.TradeDirect} to set the + * price of a random stock (generated by + * {@link com.ibm.websphere.samples.daytrader.util.TradeConfig}) through the use + * of prepared statements. + * + */ +@WebServlet(name = "PingJDBCWrite", urlPatterns = { "/servlet/PingJDBCWrite" }) +public class PingJDBCWrite extends HttpServlet { + + @Inject + @TradeJDBC + TradeDirect trade; + + private static final long serialVersionUID = -4938035109655376503L; + private static String initTime; + private static int hitCount; + + /** + * this is the main method of the servlet that will service all get + * requests. + * + * @param request + * HttpServletRequest + * @param responce + * HttpServletResponce + **/ + @Override + public void doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { + + String symbol = null; + BigDecimal newPrice; + StringBuffer output = new StringBuffer(100); + res.setContentType("text/html"); + java.io.PrintWriter out = res.getWriter(); + + try { + // get a random symbol to update and a random price. + symbol = TradeConfig.rndSymbol(); + newPrice = TradeConfig.getRandomPriceChangeFactor(); + + + // update the price of our symbol + QuoteDataBean quoteData = null; + int iter = TradeConfig.getPrimIterations(); + for (int ii = 0; ii < iter; ii++) { + quoteData = trade.updateQuotePriceVolumeInt(symbol, newPrice, 100.0, false); + } + + // write the output + output.append("Ping JDBC Write w/ Prepared Stmt." + + "
    Ping JDBC Write w/ Prep Stmt:
    Init time : " + + initTime); + hitCount++; + output.append("
    Hit Count: " + hitCount); + output.append("
    Update Information
    "); + output.append("
    " + quoteData.toHTML() + "
    "); + out.println(output.toString()); + + } catch (Exception e) { + Log.error(e, "PingJDBCWrite -- error updating quote for symbol", symbol); + res.sendError(500, "PingJDBCWrite Exception caught: " + e.toString()); + } + } + + /** + * returns a string of information about the servlet + * + * @return info String: contains info about the servlet + **/ + @Override + public String getServletInfo() { + return "Basic JDBC Write using a prepared statment makes use of TradeJDBC code."; + } + + /** + * called when the class is loaded to initialize the servlet + * + * @param config + * ServletConfig: + **/ + @Override + public void init(ServletConfig config) throws ServletException { + super.init(config); + initTime = new java.util.Date().toString(); + hitCount = 0; + + } + + /** + * forwards post requests to the doGet method Creation date: (11/6/2000 + * 10:52:39 AM) + * + * @param res + * javax.servlet.http.HttpServletRequest + * @param res2 + * javax.servlet.http.HttpServletResponse + */ + @Override + public void doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { + doGet(req, res); + } +} diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingJSONPObject.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingJSONPObject.java new file mode 100644 index 00000000..5f2cfbb8 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingJSONPObject.java @@ -0,0 +1,128 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.prims; + +import java.io.IOException; +import java.io.StringReader; +import java.io.StringWriter; + +import javax.json.Json; +import javax.json.JsonObject; +import javax.json.JsonReader; +import javax.json.stream.JsonGenerator; +import javax.json.stream.JsonParser; +import javax.servlet.ServletConfig; +import javax.servlet.ServletException; +import javax.servlet.ServletOutputStream; +import javax.servlet.annotation.WebServlet; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import com.ibm.websphere.samples.daytrader.util.Log; + +/** + * + * PingJSONP tests JSON generating and parsing + * + */ + +@WebServlet(name = "PingJSONPObject", urlPatterns = { "/servlet/PingJSONPObject" }) +public class PingJSONPObject extends HttpServlet { + + + /** + * + */ + private static final long serialVersionUID = -5348806619121122708L; + private static String initTime; + private static int hitCount; + + /** + * forwards post requests to the doGet method Creation date: (11/6/2000 + * 10:52:39 AM) + * + * @param res + * javax.servlet.http.HttpServletRequest + * @param res2 + * javax.servlet.http.HttpServletResponse + */ + @Override + public void doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { + doGet(req, res); + } + + /** + * this is the main method of the servlet that will service all get + * requests. + * + * @param request + * HttpServletRequest + * @param responce + * HttpServletResponce + **/ + @Override + public void doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { + try { + res.setContentType("text/html"); + + ServletOutputStream out = res.getOutputStream(); + + hitCount++; + + // JSON generate + JsonObject json = Json.createObjectBuilder() + .add("initTime", initTime) + .add("hitCount", hitCount).build(); + String generatedJSON = json.toString(); + + // Read back + JsonReader jsonReader = Json.createReader(new StringReader(generatedJSON)); + String parsedJSON = jsonReader.readObject().toString(); + + + out.println("Ping JSONP" + + "

    Ping JSONP
    Generated JSON: " + generatedJSON + "
    Parsed JSON: " + parsedJSON + ""); + } catch (Exception e) { + Log.error(e, "PingJSONPObject.doGet(...): general exception caught"); + res.sendError(500, e.toString()); + + } + } + + /** + * returns a string of information about the servlet + * + * @return info String: contains info about the servlet + **/ + @Override + public String getServletInfo() { + return "Basic JSON generation and parsing in a servlet"; + } + + /** + * called when the class is loaded to initialize the servlet + * + * @param config + * ServletConfig: + **/ + @Override + public void init(ServletConfig config) throws ServletException { + super.init(config); + initTime = new java.util.Date().toString(); + hitCount = 0; + } +} \ No newline at end of file diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingJSONPObjectFactory.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingJSONPObjectFactory.java new file mode 100644 index 00000000..1798797b --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingJSONPObjectFactory.java @@ -0,0 +1,127 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.prims; + +import java.io.IOException; +import java.io.StringReader; + +import javax.json.Json; +import javax.json.JsonBuilderFactory; +import javax.json.JsonObject; +import javax.json.JsonReader; +import javax.json.JsonReaderFactory; +import javax.servlet.ServletConfig; +import javax.servlet.ServletException; +import javax.servlet.ServletOutputStream; +import javax.servlet.annotation.WebServlet; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import com.ibm.websphere.samples.daytrader.util.Log; + +/** + * + * PingJSONP tests JSON generating and parsing + * + */ +@WebServlet(name = "PingJSONPObjectFactory", urlPatterns = { "/servlet/PingJSONPObjectFactory" }) +public class PingJSONPObjectFactory extends HttpServlet { + + private static final JsonBuilderFactory jSONObjectFactory = Json.createBuilderFactory(null); + private static final JsonReaderFactory jSONReaderFactory = Json.createReaderFactory(null); + /** + * + */ + private static final long serialVersionUID = -5348806619121122708L; + private static String initTime; + private static int hitCount; + + /** + * forwards post requests to the doGet method Creation date: (11/6/2000 + * 10:52:39 AM) + * + * @param res + * javax.servlet.http.HttpServletRequest + * @param res2 + * javax.servlet.http.HttpServletResponse + */ + @Override + public void doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { + doGet(req, res); + } + + /** + * this is the main method of the servlet that will service all get + * requests. + * + * @param request + * HttpServletRequest + * @param responce + * HttpServletResponce + **/ + @Override + public void doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { + try { + res.setContentType("text/html"); + + ServletOutputStream out = res.getOutputStream(); + + hitCount++; + + // JSON generate + JsonObject json = jSONObjectFactory.createObjectBuilder() + .add("initTime", initTime) + .add("hitCount", hitCount).build(); + String generatedJSON = json.toString(); + + // Read back + JsonReader jsonReader = jSONReaderFactory.createReader(new StringReader(generatedJSON)); + String parsedJSON = jsonReader.readObject().toString(); + + + out.println("Ping JSONP" + + "

    Ping JSONP
    Generated JSON: " + generatedJSON + "
    Parsed JSON: " + parsedJSON + ""); + } catch (Exception e) { + Log.error(e, "PingJSONPObject.doGet(...): general exception caught"); + res.sendError(500, e.toString()); + + } + } + + /** + * returns a string of information about the servlet + * + * @return info String: contains info about the servlet + **/ + @Override + public String getServletInfo() { + return "Basic JSON generation and parsing in a servlet"; + } + + /** + * called when the class is loaded to initialize the servlet + * + * @param config + * ServletConfig: + **/ + @Override + public void init(ServletConfig config) throws ServletException { + super.init(config); + initTime = new java.util.Date().toString(); + hitCount = 0; + } +} \ No newline at end of file diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingJSONPStreaming.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingJSONPStreaming.java new file mode 100644 index 00000000..a1039381 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingJSONPStreaming.java @@ -0,0 +1,151 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.prims; + +import java.io.IOException; +import java.io.StringReader; +import java.io.StringWriter; + +import javax.json.Json; +import javax.json.stream.JsonGenerator; +import javax.json.stream.JsonParser; +import javax.servlet.ServletConfig; +import javax.servlet.ServletException; +import javax.servlet.ServletOutputStream; +import javax.servlet.annotation.WebServlet; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import com.ibm.websphere.samples.daytrader.util.Log; + +/** + * + * PingJSONP tests JSON generating and parsing + * + */ + +@WebServlet(name = "PingJSONPStreaming", urlPatterns = { "/servlet/PingJSONPStreaming" }) +public class PingJSONPStreaming extends HttpServlet { + + + /** + * + */ + private static final long serialVersionUID = -5348806619121122708L; + private static String initTime; + private static int hitCount; + + /** + * forwards post requests to the doGet method Creation date: (11/6/2000 + * 10:52:39 AM) + * + * @param res + * javax.servlet.http.HttpServletRequest + * @param res2 + * javax.servlet.http.HttpServletResponse + */ + @Override + public void doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { + doGet(req, res); + } + + /** + * this is the main method of the servlet that will service all get + * requests. + * + * @param request + * HttpServletRequest + * @param responce + * HttpServletResponce + **/ + @Override + public void doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { + try { + res.setContentType("text/html"); + + ServletOutputStream out = res.getOutputStream(); + + hitCount++; + + // JSON generate + StringWriter sw = new StringWriter(); + JsonGenerator generator = Json.createGenerator(sw); + + generator.writeStartObject(); + generator.write("initTime",initTime); + generator.write("hitCount", hitCount); + generator.writeEnd(); + generator.flush(); + + String generatedJSON = sw.toString(); + StringBuffer parsedJSON = new StringBuffer(); + + // JSON parse + JsonParser parser = Json.createParser(new StringReader(generatedJSON)); + while (parser.hasNext()) { + JsonParser.Event event = parser.next(); + switch(event) { + case START_ARRAY: + case END_ARRAY: + case START_OBJECT: + case END_OBJECT: + case VALUE_FALSE: + case VALUE_NULL: + case VALUE_TRUE: + break; + case KEY_NAME: + parsedJSON.append(parser.getString() + ":"); + break; + case VALUE_STRING: + case VALUE_NUMBER: + parsedJSON.append(parser.getString() + " "); + break; + } + } + + out.println("Ping JSONP" + + "

    Ping JSONP
    Generated JSON: " + generatedJSON + "
    Parsed JSON: " + parsedJSON + ""); + } catch (Exception e) { + Log.error(e, "PingJSONP.doGet(...): general exception caught"); + res.sendError(500, e.toString()); + + } + } + + /** + * returns a string of information about the servlet + * + * @return info String: contains info about the servlet + **/ + @Override + public String getServletInfo() { + return "Basic JSON generation and parsing in a servlet"; + } + + /** + * called when the class is loaded to initialize the servlet + * + * @param config + * ServletConfig: + **/ + @Override + public void init(ServletConfig config) throws ServletException { + super.init(config); + initTime = new java.util.Date().toString(); + hitCount = 0; + } +} \ No newline at end of file diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingManagedExecutor.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingManagedExecutor.java new file mode 100644 index 00000000..a86aeaa2 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingManagedExecutor.java @@ -0,0 +1,120 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.prims; + +import java.io.IOException; + +import javax.annotation.Resource; +import javax.enterprise.concurrent.ManagedExecutorService; +import javax.servlet.AsyncContext; +import javax.servlet.ServletConfig; +import javax.servlet.ServletException; +import javax.servlet.ServletOutputStream; +import javax.servlet.annotation.WebServlet; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +@WebServlet(asyncSupported=true,name = "PingManagedExecutor", urlPatterns = { "/servlet/PingManagedExecutor" }) +public class PingManagedExecutor extends HttpServlet{ + + private static final long serialVersionUID = -4695386150928451234L; + private static String initTime; + private static int hitCount; + + @Resource + private ManagedExecutorService mes; + + /** + * forwards post requests to the doGet method Creation date: (03/18/2014 + * 10:52:39 AM) + * + * @param res + * javax.servlet.http.HttpServletRequest + * @param res2 + * javax.servlet.http.HttpServletResponse + */ + @Override + public void doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { + doGet(req, res); + } + + /** + * this is the main method of the servlet that will service all get + * requests. + * + * @param request + * HttpServletRequest + * @param responce + * HttpServletResponce + **/ + @Override + protected void doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { + + final AsyncContext asyncContext = req.startAsync(); + final ServletOutputStream out = res.getOutputStream(); + + try { + res.setContentType("text/html"); + + out.println("Ping ManagedExecutor" + + "

    Ping ManagedExecutor
    Init time : " + initTime + + "

    "); + + // Runnable task + mes.submit(new Runnable() { + @Override + public void run() { + try { + out.println("HitCount: " + ++hitCount +"
    "); + } catch (IOException e) { + e.printStackTrace(); + } + asyncContext.complete(); + } + }); + + + } catch (Exception e) { + e.printStackTrace(); + } + } + + + /** + * returns a string of information about the servlet + * + * @return info String: contains info about the servlet + **/ + @Override + public String getServletInfo() { + return "Tests a ManagedExecutor"; + } + + /** + * called when the class is loaded to initialize the servlet + * + * @param config + * ServletConfig: + **/ + @Override + public void init(ServletConfig config) throws ServletException { + super.init(config); + initTime = new java.util.Date().toString(); + hitCount = 0; + } + +} diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingManagedThread.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingManagedThread.java new file mode 100644 index 00000000..6ecdd98b --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingManagedThread.java @@ -0,0 +1,126 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.prims; + +import java.io.IOException; + +import javax.annotation.Resource; +import javax.enterprise.concurrent.ManagedThreadFactory; +import javax.servlet.AsyncContext; +import javax.servlet.ServletConfig; +import javax.servlet.ServletException; +import javax.servlet.ServletOutputStream; +import javax.servlet.annotation.WebServlet; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import com.ibm.websphere.samples.daytrader.util.Log; + +@WebServlet(asyncSupported=true,name = "PingManagedThread", urlPatterns = { "/servlet/PingManagedThread" }) +public class PingManagedThread extends HttpServlet{ + + private static final long serialVersionUID = -4695386150928451234L; + private static String initTime; + private static int hitCount; + + @Resource + private ManagedThreadFactory managedThreadFactory; + + /** + * forwards post requests to the doGet method Creation date: (03/18/2014 + * 10:52:39 AM) + * + * @param res + * javax.servlet.http.HttpServletRequest + * @param res2 + * javax.servlet.http.HttpServletResponse + */ + @Override + public void doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { + doGet(req, res); + } + + /** + * this is the main method of the servlet that will service all get + * requests. + * + * @param request + * HttpServletRequest + * @param responce + * HttpServletResponce + **/ + @Override + protected void doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { + + final AsyncContext asyncContext = req.startAsync(); + final ServletOutputStream out = res.getOutputStream(); + + try { + + res.setContentType("text/html"); + + out.println("Ping ManagedThread" + + "

    Ping ManagedThread
    Init time : " + initTime + "

    "); + + Thread thread = managedThreadFactory.newThread(new Runnable() { + @Override + public void run() { + try { + out.println("HitCount: " + ++hitCount +"
    "); + } catch (IOException e) { + e.printStackTrace(); + } + asyncContext.complete(); + } + }); + + thread.start(); + + } catch (Exception e) { + Log.error(e, "PingManagedThreadServlet.doGet(...): general exception caught"); + res.sendError(500, e.toString()); + } + + } + + + + /** + * returns a string of information about the servlet + * + * @return info String: contains info about the servlet + **/ + @Override + public String getServletInfo() { + return "Tests a ManagedThread asynchronous servlet"; + } + + /** + * called when the class is loaded to initialize the servlet + * + * @param config + * ServletConfig: + **/ + @Override + public void init(ServletConfig config) throws ServletException { + super.init(config); + initTime = new java.util.Date().toString(); + hitCount = 0; + + } + +} diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingReentryServlet.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingReentryServlet.java new file mode 100644 index 00000000..00b5cb08 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingReentryServlet.java @@ -0,0 +1,138 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.prims; + +import java.io.BufferedReader; +import java.io.IOException; +import java.io.InputStreamReader; +import java.net.HttpURLConnection; +import java.net.URL; + +import javax.servlet.ServletConfig; +import javax.servlet.ServletException; +import javax.servlet.ServletOutputStream; +import javax.servlet.annotation.WebServlet; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +@WebServlet(name = "PingReentryServlet", urlPatterns = { "/servlet/PingReentryServlet" }) +public class PingReentryServlet extends HttpServlet { + + private static final long serialVersionUID = -2536027021580175706L; + + @Override + public void doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { + doGet(req, res); + } + + /** + * this is the main method of the servlet that will service all get + * requests. + * + * @param request + * HttpServletRequest + * @param responce + * HttpServletResponce + **/ + @Override + public void doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { + try { + res.setContentType("text/html"); + + // The following 2 lines are the difference between PingServlet and + // PingServletWriter + // the latter uses a PrintWriter for output versus a binary output + // stream. + ServletOutputStream out = res.getOutputStream(); + // java.io.PrintWriter out = res.getWriter(); + int numReentriesLeft; + int sleepTime; + + if(req.getParameter("numReentries") != null){ + numReentriesLeft = Integer.parseInt(req.getParameter("numReentries")); + } else { + numReentriesLeft = 0; + } + + if(req.getParameter("sleep") != null){ + sleepTime = Integer.parseInt(req.getParameter("sleep")); + } else { + sleepTime = 0; + } + + if(numReentriesLeft <= 0) { + Thread.sleep(sleepTime); + out.println(numReentriesLeft); + } else { + String hostname = req.getServerName(); + int port = req.getServerPort(); + req.getContextPath(); + int saveNumReentriesLeft = numReentriesLeft; + int nextNumReentriesLeft = numReentriesLeft - 1; + + // Recursively call into the same server, decrementing the counter by 1. + String url = "http://" + hostname + ":" + port + "/" + req.getRequestURI() + + "?numReentries=" + nextNumReentriesLeft + + "&sleep=" + sleepTime; + URL obj = new URL(url); + HttpURLConnection con = (HttpURLConnection) obj.openConnection(); + con.setRequestMethod("GET"); + con.setRequestProperty("User-Agent", "Mozilla/5.0"); + + //Append the recursion count to the response and return it. + BufferedReader in = new BufferedReader( + new InputStreamReader(con.getInputStream())); + String inputLine; + StringBuffer response = new StringBuffer(); + + while ((inputLine = in.readLine()) != null) { + response.append(inputLine); + } + in.close(); + + Thread.sleep(sleepTime); + out.println(saveNumReentriesLeft + response.toString()); + } + } catch (Exception e) { + //Log.error(e, "PingReentryServlet.doGet(...): general exception caught"); + res.sendError(500, e.toString()); + + } + } + + /** + * returns a string of information about the servlet + * + * @return info String: contains info about the servlet + **/ + @Override + public String getServletInfo() { + return "Basic dynamic HTML generation through a servlet"; + } + + /** + * called when the class is loaded to initialize the servlet + * + * @param config + * ServletConfig: + **/ + @Override + public void init(ServletConfig config) throws ServletException { + super.init(config); + + } +} diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingServlet.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingServlet.java new file mode 100644 index 00000000..a8996e1e --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingServlet.java @@ -0,0 +1,112 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.prims; + +import java.io.IOException; + +import javax.servlet.ServletConfig; +import javax.servlet.ServletException; +import javax.servlet.ServletOutputStream; +import javax.servlet.annotation.WebServlet; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import com.ibm.websphere.samples.daytrader.util.Log; + +/** + * + * PingServlet tests fundamental dynamic HTML creation functionality through + * server side servlet processing. + * + */ + +@WebServlet(name = "PingServlet", urlPatterns = { "/servlet/PingServlet" }) +public class PingServlet extends HttpServlet { + + private static final long serialVersionUID = 7097023236709683760L; + private static String initTime; + private static int hitCount; + + /** + * forwards post requests to the doGet method Creation date: (11/6/2000 + * 10:52:39 AM) + * + * @param res + * javax.servlet.http.HttpServletRequest + * @param res2 + * javax.servlet.http.HttpServletResponse + */ + @Override + public void doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { + doGet(req, res); + } + + /** + * this is the main method of the servlet that will service all get + * requests. + * + * @param request + * HttpServletRequest + * @param responce + * HttpServletResponce + **/ + @Override + public void doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { + try { + res.setContentType("text/html"); + + // The following 2 lines are the difference between PingServlet and + // PingServletWriter + // the latter uses a PrintWriter for output versus a binary output + // stream. + ServletOutputStream out = res.getOutputStream(); + // java.io.PrintWriter out = res.getWriter(); + hitCount++; + out.println("Ping Servlet" + + "

    Ping Servlet
    Init time : " + initTime + + "

    Hit Count: " + hitCount + ""); + } catch (Exception e) { + Log.error(e, "PingServlet.doGet(...): general exception caught"); + res.sendError(500, e.toString()); + + } + } + + /** + * returns a string of information about the servlet + * + * @return info String: contains info about the servlet + **/ + @Override + public String getServletInfo() { + return "Basic dynamic HTML generation through a servlet"; + } + + /** + * called when the class is loaded to initialize the servlet + * + * @param config + * ServletConfig: + **/ + @Override + public void init(ServletConfig config) throws ServletException { + super.init(config); + initTime = new java.util.Date().toString(); + hitCount = 0; + + } +} \ No newline at end of file diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingServlet2DB.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingServlet2DB.java new file mode 100644 index 00000000..e003c41e --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingServlet2DB.java @@ -0,0 +1,114 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.prims; + +import java.io.IOException; + +import javax.servlet.ServletConfig; +import javax.servlet.ServletException; +import javax.servlet.annotation.WebServlet; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import com.ibm.websphere.samples.daytrader.impl.direct.TradeDirect; +import com.ibm.websphere.samples.daytrader.util.Log; + +/** + * + * PingServlet2DB tests the path of a servlet making a JDBC connection to a + * database + * + */ + +@WebServlet(name = "PingServlet2DB", urlPatterns = { "/servlet/PingServlet2DB" }) +public class PingServlet2DB extends HttpServlet { + + private static final long serialVersionUID = -6456675185605592049L; + private static String initTime; + private static int hitCount; + + /** + * forwards post requests to the doGet method Creation date: (11/6/2000 + * 10:52:39 AM) + * + * @param res + * javax.servlet.http.HttpServletRequest + * @param res2 + * javax.servlet.http.HttpServletResponse + */ + @Override + public void doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { + doGet(req, res); + } + + /** + * this is the main method of the servlet that will service all get + * requests. + * + * @param request + * HttpServletRequest + * @param responce + * HttpServletResponce + **/ + @Override + public void doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { + res.setContentType("text/html"); + java.io.PrintWriter out = res.getWriter(); + String symbol = null; + StringBuffer output = new StringBuffer(100); + + try { + // TradeJDBC uses prepared statements so I am going to make use of + // it's code. + TradeDirect trade = new TradeDirect(); + trade.getConnPublic(); + + output.append("PingServlet2DB." + + "
    PingServlet2DB:
    Init time : " + initTime); + hitCount++; + output.append("
    Hit Count: " + hitCount); + output.append("
    "); + out.println(output.toString()); + } catch (Exception e) { + Log.error(e, "PingServlet2DB -- error getting connection to the database", symbol); + res.sendError(500, "PingServlet2DB Exception caught: " + e.toString()); + } + } + + /** + * returns a string of information about the servlet + * + * @return info String: contains info about the servlet + **/ + @Override + public String getServletInfo() { + return "Basic JDBC Read using a prepared statment, makes use of TradeJDBC class"; + } + + /** + * called when the class is loaded to initialize the servlet + * + * @param config + * ServletConfig: + **/ + @Override + public void init(ServletConfig config) throws ServletException { + super.init(config); + hitCount = 0; + initTime = new java.util.Date().toString(); + } +} \ No newline at end of file diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingServlet2Include.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingServlet2Include.java new file mode 100644 index 00000000..29a81cdf --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingServlet2Include.java @@ -0,0 +1,104 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.prims; + +import java.io.IOException; + +import javax.servlet.ServletConfig; +import javax.servlet.ServletException; +import javax.servlet.annotation.WebServlet; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import com.ibm.websphere.samples.daytrader.util.Log; +import com.ibm.websphere.samples.daytrader.util.TradeConfig; + +/** + * + * PingServlet2Include tests servlet to servlet request dispatching. Servlet 1, + * the controller, creates a new JavaBean object forwards the servlet request + * with the JavaBean added to Servlet 2. Servlet 2 obtains access to the + * JavaBean through the Servlet request object and provides the dynamic HTML + * output based on the JavaBean data. PingServlet2Servlet is the initial servlet + * that sends a request to {@link PingServlet2ServletRcv} + * + */ +@WebServlet(name = "PingServlet2Include", urlPatterns = { "/servlet/PingServlet2Include" }) +public class PingServlet2Include extends HttpServlet { + + private static final long serialVersionUID = 1063447780151198793L; + private static String initTime; + private static int hitCount; + + /** + * forwards post requests to the doGet method Creation date: (11/6/2000 + * 10:52:39 AM) + * + * @param res + * javax.servlet.http.HttpServletRequest + * @param res2 + * javax.servlet.http.HttpServletResponse + */ + @Override + public void doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { + doGet(req, res); + } + + /** + * this is the main method of the servlet that will service all get + * requests. + * + * @param request + * HttpServletRequest + * @param responce + * HttpServletResponce + **/ + @Override + public void doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { + + try { + res.setContentType("text/html"); + + int iter = TradeConfig.getPrimIterations(); + for (int ii = 0; ii < iter; ii++) { + getServletConfig().getServletContext().getRequestDispatcher("/servlet/PingServlet2IncludeRcv").include(req, res); + } + + // ServletOutputStream out = res.getOutputStream(); + java.io.PrintWriter out = res.getWriter(); + out.println("Ping Servlet 2 Include" + + "

    Ping Servlet 2 Include
    Init time : " + + initTime + "

    Hit Count: " + hitCount++ + ""); + } catch (Exception ex) { + Log.error(ex, "PingServlet2Include.doGet(...): general exception"); + res.sendError(500, "PingServlet2Include.doGet(...): general exception" + ex.toString()); + } + } + + /** + * called when the class is loaded to initialize the servlet + * + * @param config + * ServletConfig: + **/ + @Override + public void init(ServletConfig config) throws ServletException { + super.init(config); + initTime = new java.util.Date().toString(); + hitCount = 0; + } +} diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingServlet2IncludeRcv.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingServlet2IncludeRcv.java new file mode 100644 index 00000000..3b8e1a70 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingServlet2IncludeRcv.java @@ -0,0 +1,68 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.prims; + +import java.io.IOException; + +import javax.servlet.ServletException; +import javax.servlet.annotation.WebServlet; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +/** + * + * PingServlet2Include tests servlet to servlet request dispatching. Servlet 1, + * the controller, creates a new JavaBean object forwards the servlet request + * with the JavaBean added to Servlet 2. Servlet 2 obtains access to the + * JavaBean through the Servlet request object and provides the dynamic HTML + * output based on the JavaBean data. PingServlet2Servlet is the initial servlet + * that sends a request to {@link PingServlet2ServletRcv} + * + */ +@WebServlet(name = "PingServlet2IncludeRcv", urlPatterns = { "/servlet/PingServlet2IncludeRcv" }) +public class PingServlet2IncludeRcv extends HttpServlet { + + private static final long serialVersionUID = 2628801298561220872L; + + /** + * forwards post requests to the doGet method Creation date: (11/6/2000 + * 10:52:39 AM) + * + * @param res + * javax.servlet.http.HttpServletRequest + * @param res2 + * javax.servlet.http.HttpServletResponse + */ + @Override + public void doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { + doGet(req, res); + } + + /** + * this is the main method of the servlet that will service all get + * requests. + * + * @param request + * HttpServletRequest + * @param responce + * HttpServletResponce + **/ + @Override + public void doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { + // do nothing but get included by PingServlet2Include + } +} \ No newline at end of file diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingServlet2JNDI.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingServlet2JNDI.java new file mode 100644 index 00000000..44031d13 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingServlet2JNDI.java @@ -0,0 +1,109 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.prims; + +import java.io.IOException; + +import javax.servlet.ServletConfig; +import javax.servlet.ServletException; +import javax.servlet.annotation.WebServlet; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import com.ibm.websphere.samples.daytrader.util.Log; + +/** + * + * PingServlet2JNDI performs a basic JNDI lookup of a JDBC DataSource + * + */ + +@WebServlet(name = "PingServlet2JNDI", urlPatterns = { "/servlet/PingServlet2JNDI" }) +public class PingServlet2JNDI extends HttpServlet { + + private static final long serialVersionUID = -8236271998141415347L; + private static String initTime; + private static int hitCount; + + /** + * forwards post requests to the doGet method Creation date: (11/6/2000 + * 10:52:39 AM) + * + * @param res + * javax.servlet.http.HttpServletRequest + * @param res2 + * javax.servlet.http.HttpServletResponse + */ + @Override + public void doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { + doGet(req, res); + } + + /** + * this is the main method of the servlet that will service all get + * requests. + * + * @param request + * HttpServletRequest + * @param responce + * HttpServletResponce + **/ + @Override + public void doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { + res.setContentType("text/html"); + java.io.PrintWriter out = res.getWriter(); + + StringBuffer output = new StringBuffer(100); + + try { + output.append("Ping JNDI -- lookup of JDBC DataSource" + + "
    Ping JNDI -- lookup of JDBC DataSource
    Init time : " + + initTime); + hitCount++; + output.append("
    Hit Count: " + hitCount); + output.append("
    "); + out.println(output.toString()); + } catch (Exception e) { + Log.error(e, "PingServlet2JNDI -- error look up of a JDBC DataSource"); + res.sendError(500, "PingServlet2JNDI Exception caught: " + e.toString()); + } + + } + + /** + * returns a string of information about the servlet + * + * @return info String: contains info about the servlet + **/ + @Override + public String getServletInfo() { + return "Basic JNDI look up of a JDBC DataSource"; + } + + /** + * called when the class is loaded to initialize the servlet + * + * @param config + * ServletConfig: + **/ + @Override + public void init(ServletConfig config) throws ServletException { + super.init(config); + hitCount = 0; + initTime = new java.util.Date().toString(); + } +} \ No newline at end of file diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingServlet2Jsp.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingServlet2Jsp.java new file mode 100644 index 00000000..719e7209 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingServlet2Jsp.java @@ -0,0 +1,78 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.prims; + +import java.io.IOException; + +import javax.servlet.ServletException; +import javax.servlet.annotation.WebServlet; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import com.ibm.websphere.samples.daytrader.util.Log; + +/** + * + * PingServlet2JSP tests a call from a servlet to a JavaServer Page providing + * server-side dynamic HTML through JSP scripting. + * + */ +@WebServlet(name = "PingServlet2Jsp", urlPatterns = { "/servlet/PingServlet2Jsp" }) +public class PingServlet2Jsp extends HttpServlet { + private static final long serialVersionUID = -5199543766883932389L; + private static int hitCount = 0; + + /** + * forwards post requests to the doGet method Creation date: (11/6/2000 + * 10:52:39 AM) + * + * @param res + * javax.servlet.http.HttpServletRequest + * @param res2 + * javax.servlet.http.HttpServletResponse + */ + @Override + public void doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { + doGet(req, res); + } + + /** + * this is the main method of the servlet that will service all get + * requests. + * + * @param request + * HttpServletRequest + * @param responce + * HttpServletResponce + **/ + @Override + public void doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { + PingBean ab; + try { + ab = new PingBean(); + hitCount++; + ab.setMsg("Hit Count: " + hitCount); + req.setAttribute("ab", ab); + + getServletConfig().getServletContext().getRequestDispatcher("/PingServlet2Jsp.jsp").forward(req, res); + } catch (Exception ex) { + Log.error(ex, "PingServlet2Jsp.doGet(...): request error"); + res.sendError(500, "PingServlet2Jsp.doGet(...): request error" + ex.toString()); + + } + } +} \ No newline at end of file diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingServlet2PDF.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingServlet2PDF.java new file mode 100644 index 00000000..4b6b2f2a --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingServlet2PDF.java @@ -0,0 +1,115 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.prims; + +import java.io.BufferedInputStream; +import java.io.BufferedOutputStream; +import java.io.IOException; +import java.net.URL; +import java.net.URLConnection; + +import javax.servlet.ServletException; +import javax.servlet.ServletOutputStream; +import javax.servlet.annotation.WebServlet; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import com.ibm.websphere.samples.daytrader.util.Log; + +/** + * + * PingServlet2PDF tests a call to a servlet which then loads a PDF document. + * + */ +@WebServlet(name = "PingServlet2PDF", urlPatterns = { "/servlet/PingServlet2PDF" }) +public class PingServlet2PDF extends HttpServlet { + + private static final long serialVersionUID = -1321793174442755868L; + private static int hitCount = 0; + private static final int BUFFER_SIZE = 1024 * 8; // 8 KB + + /** + * forwards post requests to the doGet method Creation date: (11/6/2000 + * 10:52:39 AM) + * + * @param res + * javax.servlet.http.HttpServletRequest + * @param res2 + * javax.servlet.http.HttpServletResponse + */ + @Override + public void doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { + doGet(req, res); + } + + /** + * this is the main method of the servlet that will service all get + * requests. + * + * @param request + * HttpServletRequest + * @param responce + * HttpServletResponce + **/ + @Override + public void doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { + PingBean ab; + BufferedInputStream bis = null; + BufferedOutputStream bos = null; + try { + ab = new PingBean(); + hitCount++; + ab.setMsg("Hit Count: " + hitCount); + req.setAttribute("ab", ab); + + ServletOutputStream out = res.getOutputStream(); + + // MIME type for pdf doc + res.setContentType("application/pdf"); + + // Open an InputStream to the PDF document + String fileURL = "http://localhost:9080/daytrader/WAS_V7_64-bit_performance.pdf"; + URL url = new URL(fileURL); + URLConnection conn = url.openConnection(); + bis = new BufferedInputStream(conn.getInputStream()); + + // Transfer the InputStream (PDF Document) to OutputStream (servlet) + bos = new BufferedOutputStream(out); + byte[] buff = new byte[BUFFER_SIZE]; + int bytesRead; + // Simple read/write loop. + while (-1 != (bytesRead = bis.read(buff, 0, buff.length))) { + bos.write(buff, 0, bytesRead); + } + + } catch (Exception ex) { + Log.error(ex, "PingServlet2Jsp.doGet(...): request error"); + res.sendError(500, "PingServlet2Jsp.doGet(...): request error" + ex.toString()); + + } + + finally { + if (bis != null) { + bis.close(); + } + if (bos != null) { + bos.close(); + } + } + + } +} \ No newline at end of file diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingServlet2Servlet.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingServlet2Servlet.java new file mode 100644 index 00000000..8550ed6b --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingServlet2Servlet.java @@ -0,0 +1,82 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.prims; + +import java.io.IOException; + +import javax.servlet.ServletException; +import javax.servlet.annotation.WebServlet; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import com.ibm.websphere.samples.daytrader.util.Log; + +/** + * + * PingServlet2Servlet tests servlet to servlet request dispatching. Servlet 1, + * the controller, creates a new JavaBean object forwards the servlet request + * with the JavaBean added to Servlet 2. Servlet 2 obtains access to the + * JavaBean through the Servlet request object and provides the dynamic HTML + * output based on the JavaBean data. PingServlet2Servlet is the initial servlet + * that sends a request to {@link PingServlet2ServletRcv} + * + */ +@WebServlet(name = "PingServlet2Servlet", urlPatterns = { "/servlet/PingServlet2Servlet" }) +public class PingServlet2Servlet extends HttpServlet { + private static final long serialVersionUID = -955942781902636048L; + private static int hitCount = 0; + + /** + * forwards post requests to the doGet method Creation date: (11/6/2000 + * 10:52:39 AM) + * + * @param res + * javax.servlet.http.HttpServletRequest + * @param res2 + * javax.servlet.http.HttpServletResponse + */ + @Override + public void doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { + doGet(req, res); + } + + /** + * this is the main method of the servlet that will service all get + * requests. + * + * @param request + * HttpServletRequest + * @param responce + * HttpServletResponce + **/ + @Override + public void doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { + PingBean ab; + try { + ab = new PingBean(); + hitCount++; + ab.setMsg("Hit Count: " + hitCount); + req.setAttribute("ab", ab); + + getServletConfig().getServletContext().getRequestDispatcher("/servlet/PingServlet2ServletRcv").forward(req, res); + } catch (Exception ex) { + Log.error(ex, "PingServlet2Servlet.doGet(...): general exception"); + res.sendError(500, "PingServlet2Servlet.doGet(...): general exception" + ex.toString()); + + } + } +} \ No newline at end of file diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingServlet2ServletRcv.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingServlet2ServletRcv.java new file mode 100644 index 00000000..c195a8e6 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingServlet2ServletRcv.java @@ -0,0 +1,97 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.prims; + +import java.io.IOException; +import java.io.PrintWriter; + +import javax.servlet.ServletConfig; +import javax.servlet.ServletException; +import javax.servlet.annotation.WebServlet; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import com.ibm.websphere.samples.daytrader.util.Log; + +/** + * + * PingServlet2Servlet tests servlet to servlet request dispatching. Servlet 1, + * the controller, creates a new JavaBean object forwards the servlet request + * with the JavaBean added to Servlet 2. Servlet 2 obtains access to the + * JavaBean through the Servlet request object and provides the dynamic HTML + * output based on the JavaBean data. PingServlet2ServletRcv receives a request + * from {@link PingServlet2Servlet} and displays output. + * + */ +@WebServlet(name = "PingServlet2ServletRcv", urlPatterns = { "/servlet/PingServlet2ServletRcv" }) +public class PingServlet2ServletRcv extends HttpServlet { + private static final long serialVersionUID = -5241563129216549706L; + private static String initTime = null; + + /** + * forwards post requests to the doGet method Creation date: (11/6/2000 + * 10:52:39 AM) + * + * @param res + * javax.servlet.http.HttpServletRequest + * @param res2 + * javax.servlet.http.HttpServletResponse + */ + @Override + public void doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { + doGet(req, res); + } + + /** + * this is the main method of the servlet that will service all get + * requests. + * + * @param request + * HttpServletRequest + * @param responce + * HttpServletResponce + **/ + @Override + public void doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { + PingBean ab; + try { + ab = (PingBean) req.getAttribute("ab"); + res.setContentType("text/html"); + PrintWriter out = res.getWriter(); + out.println("Ping Servlet2Servlet" + + "

    PingServlet2Servlet:
    Init time: " + + initTime + "

    Message from Servlet: " + ab.getMsg() + ""); + } catch (Exception ex) { + Log.error(ex, "PingServlet2ServletRcv.doGet(...): general exception"); + res.sendError(500, "PingServlet2ServletRcv.doGet(...): general exception" + ex.toString()); + } + + } + + /** + * called when the class is loaded to initialize the servlet + * + * @param config + * ServletConfig: + **/ + @Override + public void init(ServletConfig config) throws ServletException { + super.init(config); + initTime = new java.util.Date().toString(); + + } +} \ No newline at end of file diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingServlet30Async.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingServlet30Async.java new file mode 100644 index 00000000..803bf6b6 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingServlet30Async.java @@ -0,0 +1,118 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.prims; + +import java.io.IOException; + +import javax.servlet.AsyncContext; +import javax.servlet.ServletConfig; +import javax.servlet.ServletException; +import javax.servlet.ServletInputStream; +import javax.servlet.ServletOutputStream; +import javax.servlet.annotation.WebServlet; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +//import com.ibm.websphere.samples.daytrader.util.Log; + +/** + * + * PingServlet31Async tests fundamental dynamic HTML creation functionality through + * server side servlet processing asynchronously. + * + */ + +@WebServlet(name = "PingServlet30Async", urlPatterns = { "/servlet/PingServlet30Async" }, asyncSupported=true) +public class PingServlet30Async extends HttpServlet { + + private static final long serialVersionUID = 8731300373855056660L; + private static String initTime; + private static int hitCount; + + /** + * forwards post requests to the doGet method Creation date: (11/6/2000 + * 10:52:39 AM) + * + * @param res + * javax.servlet.http.HttpServletRequest + * @param res2 + * javax.servlet.http.HttpServletResponse + */ + @Override + public void doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { + res.setContentType("text/html"); + + AsyncContext ac = req.startAsync(); + StringBuilder sb = new StringBuilder(); + + ServletInputStream input = req.getInputStream(); + byte[] b = new byte[1024]; + int len = -1; + while ((len = input.read(b)) != -1) { + String data = new String(b, 0, len); + sb.append(data); + } + + ServletOutputStream output = res.getOutputStream(); + + output.println("Ping Servlet 3.0 Async" + + "

    Ping Servlet 3.0 Async
    " + + "Init time : " + initTime + + "

    Hit Count: " + ++hitCount + "
    Data Received: "+ sb.toString() + ""); + + ac.complete(); + } + + + /** + * this is the main method of the servlet that will service all get + * requests. + * + * @param request + * HttpServletRequest + * @param responce + * HttpServletResponce + **/ + @Override + public void doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { + doPost(req,res); + + } + /** + * returns a string of information about the servlet + * + * @return info String: contains info about the servlet + **/ + @Override + public String getServletInfo() { + return "Basic dynamic HTML generation through a servlet"; + } + + /** + * called when the class is loaded to initialize the servlet + * + * @param config + * ServletConfig: + **/ + @Override + public void init(ServletConfig config) throws ServletException { + super.init(config); + initTime = new java.util.Date().toString(); + hitCount = 0; + + } +} \ No newline at end of file diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingServlet31Async.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingServlet31Async.java new file mode 100644 index 00000000..2bc313b8 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingServlet31Async.java @@ -0,0 +1,186 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.prims; + +import java.io.IOException; + +import java.util.Queue; +import java.util.concurrent.LinkedBlockingQueue; + +import javax.servlet.AsyncContext; +import javax.servlet.ReadListener; +import javax.servlet.ServletConfig; +import javax.servlet.ServletException; +import javax.servlet.ServletInputStream; +import javax.servlet.ServletOutputStream; +import javax.servlet.WriteListener; +import javax.servlet.annotation.WebServlet; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +//import com.ibm.websphere.samples.daytrader.util.Log; + +/** + * + * PingServlet31Async tests fundamental dynamic HTML creation functionality through + * server side servlet processing asynchronously with non-blocking i/o. + * + */ + +@WebServlet(name = "PingServlet31Async", urlPatterns = { "/servlet/PingServlet31Async" }, asyncSupported=true) +public class PingServlet31Async extends HttpServlet { + + private static final long serialVersionUID = 8731300373855056660L; + private static String initTime; + private static int hitCount; + + /** + * forwards post requests to the doGet method Creation date: (11/6/2000 + * 10:52:39 AM) + * + * @param res + * javax.servlet.http.HttpServletRequest + * @param res2 + * javax.servlet.http.HttpServletResponse + */ + @Override + public void doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { + res.setContentType("text/html"); + + AsyncContext ac = req.startAsync(); + + ServletInputStream input = req.getInputStream(); + ReadListener readListener = new ReadListenerImpl(input, res, ac); + input.setReadListener(readListener); + } + + class ReadListenerImpl implements ReadListener { + private ServletInputStream input = null; + private HttpServletResponse res = null; + private AsyncContext ac = null; + private Queue queue = new LinkedBlockingQueue(); + + ReadListenerImpl(ServletInputStream in, HttpServletResponse r, AsyncContext c) { + input = in; + res = r; + ac = c; + } + + public void onDataAvailable() throws IOException { + StringBuilder sb = new StringBuilder(); + int len = -1; + byte b[] = new byte[1024]; + + while (input.isReady() && (len = input.read(b)) != -1) { + String data = new String(b, 0, len); + sb.append(data); + } + queue.add(sb.toString()); + + } + + public void onAllDataRead() throws IOException { + ServletOutputStream output = res.getOutputStream(); + WriteListener writeListener = new WriteListenerImpl(output, queue, ac); + output.setWriteListener(writeListener); + } + + public void onError(final Throwable t) { + ac.complete(); + t.printStackTrace(); + } + } + + class WriteListenerImpl implements WriteListener { + private ServletOutputStream output = null; + private Queue queue = null; + private AsyncContext ac = null; + + WriteListenerImpl(ServletOutputStream sos, Queue q, AsyncContext c) { + output = sos; + queue = q; + ac = c; + + try { + output.print("Ping Servlet 3.1 Async" + + "

    Ping Servlet 3.1 Async" + + "
    Init time : " + initTime + + "

    Hit Count: " + ++hitCount + "
    Data Received: "); + } catch (IOException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } + } + + public void onWritePossible() throws IOException { + + while (queue.peek() != null && output.isReady()) { + String data = (String) queue.poll(); + output.print(data); + } + + if (queue.peek() == null) { + output.println(""); + ac.complete(); + } + } + + public void onError(final Throwable t) { + ac.complete(); + t.printStackTrace(); + } + } + + + + /** + * this is the main method of the servlet that will service all get + * requests. + * + * @param request + * HttpServletRequest + * @param responce + * HttpServletResponce + **/ + @Override + public void doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { + doPost(req,res); + } + /** + * returns a string of information about the servlet + * + * @return info String: contains info about the servlet + **/ + @Override + public String getServletInfo() { + return "Basic dynamic HTML generation through a servlet"; + } + + /** + * called when the class is loaded to initialize the servlet + * + * @param config + * ServletConfig: + **/ + @Override + public void init(ServletConfig config) throws ServletException { + super.init(config); + initTime = new java.util.Date().toString(); + hitCount = 0; + + } +} \ No newline at end of file diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingServlet31AsyncRead.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingServlet31AsyncRead.java new file mode 100644 index 00000000..e23994ed --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingServlet31AsyncRead.java @@ -0,0 +1,145 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.prims; + +import java.io.IOException; + +import javax.servlet.AsyncContext; +import javax.servlet.ReadListener; +import javax.servlet.ServletConfig; +import javax.servlet.ServletException; +import javax.servlet.ServletInputStream; +import javax.servlet.ServletOutputStream; +import javax.servlet.annotation.WebServlet; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +//import com.ibm.websphere.samples.daytrader.util.Log; + +/** + * + * PingServlet31Async tests fundamental dynamic HTML creation functionality through + * server side servlet processing asynchronously with non-blocking i/o. + * + */ + +@WebServlet(name = "PingServlet31AsyncRead", urlPatterns = { "/servlet/PingServlet31AsyncRead" }, asyncSupported=true) +public class PingServlet31AsyncRead extends HttpServlet { + + private static final long serialVersionUID = 8731300373855056660L; + private static String initTime; + private static int hitCount; + + /** + * forwards post requests to the doGet method Creation date: (11/6/2000 + * 10:52:39 AM) + * + * @param res + * javax.servlet.http.HttpServletRequest + * @param res2 + * javax.servlet.http.HttpServletResponse + */ + @Override + public void doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { + res.setContentType("text/html"); + + AsyncContext ac = req.startAsync(); + + ServletInputStream input = req.getInputStream(); + ReadListener readListener = new ReadListenerImpl(input, res, ac); + input.setReadListener(readListener); + } + + class ReadListenerImpl implements ReadListener { + private ServletInputStream input = null; + private HttpServletResponse res = null; + private AsyncContext ac = null; + private StringBuilder sb = new StringBuilder(); + + ReadListenerImpl(ServletInputStream in, HttpServletResponse r, AsyncContext c) { + input = in; + res = r; + ac = c; + } + + public void onDataAvailable() throws IOException { + + int len = -1; + byte b[] = new byte[1024]; + + while (input.isReady() && (len = input.read(b)) != -1) { + String data = new String(b, 0, len); + sb.append(data); + } + + + } + + public void onAllDataRead() throws IOException { + ServletOutputStream output = res.getOutputStream(); + output.println("Ping Servlet 3.1 Async" + + "

    Ping Servlet 3.1 AsyncRead" + + "
    Init time : " + initTime + + "

    Hit Count: " + ++hitCount + "
    Data Received: " + sb.toString() + ""); + ac.complete(); + } + + public void onError(final Throwable t) { + ac.complete(); + t.printStackTrace(); + } + } + + + + /** + * this is the main method of the servlet that will service all get + * requests. + * + * @param request + * HttpServletRequest + * @param responce + * HttpServletResponce + **/ + @Override + public void doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { + doPost(req,res); + } + /** + * returns a string of information about the servlet + * + * @return info String: contains info about the servlet + **/ + @Override + public String getServletInfo() { + return "Basic dynamic HTML generation through a servlet"; + } + + /** + * called when the class is loaded to initialize the servlet + * + * @param config + * ServletConfig: + **/ + @Override + public void init(ServletConfig config) throws ServletException { + super.init(config); + initTime = new java.util.Date().toString(); + hitCount = 0; + + } +} \ No newline at end of file diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingServletLargeContentLength.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingServletLargeContentLength.java new file mode 100644 index 00000000..6246a5c5 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingServletLargeContentLength.java @@ -0,0 +1,95 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.prims; + +import java.io.IOException; + +import javax.servlet.ServletConfig; +import javax.servlet.ServletException; +import javax.servlet.annotation.WebServlet; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +/** + * + * PingServletSetContentLength tests fundamental dynamic HTML creation + * functionality through server side servlet processing. + * + */ + +@WebServlet(name = "PingServletLargeContentLength", urlPatterns = { "/servlet/PingServletLargeContentLength" }) +public class PingServletLargeContentLength extends HttpServlet { + + + + /** + * + */ + private static final long serialVersionUID = -7979576220528252408L; + + /** + * forwards post requests to the doGet method Creation date: (02/07/2013 + * 10:52:39 AM) + * + * @param res + * javax.servlet.http.HttpServletRequest + * @param res2 + * javax.servlet.http.HttpServletResponse + */ + @Override + public void doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { + System.out.println("Length: " + req.getContentLengthLong()); + + + + + } + + /** + * this is the main method of the servlet that will service all get + * requests. + * + * @param request + * HttpServletRequest + * @param responce + * HttpServletResponce + **/ + @Override + public void doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { + doPost(req,res); } + + /** + * returns a string of information about the servlet + * + * @return info String: contains info about the servlet + **/ + @Override + public String getServletInfo() { + return "Basic dynamic HTML generation through a servlet, with " + "contentLength set by contentLength parameter."; + } + + /** + * called when the class is loaded to initialize the servlet + * + * @param config + * ServletConfig: + **/ + @Override + public void init(ServletConfig config) throws ServletException { + super.init(config); + } +} \ No newline at end of file diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingServletSetContentLength.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingServletSetContentLength.java new file mode 100644 index 00000000..4ec93595 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingServletSetContentLength.java @@ -0,0 +1,121 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.prims; + +import java.io.IOException; + +import javax.servlet.ServletConfig; +import javax.servlet.ServletException; +import javax.servlet.ServletOutputStream; +import javax.servlet.annotation.WebServlet; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import com.ibm.websphere.samples.daytrader.util.Log; + +/** + * + * PingServletSetContentLength tests fundamental dynamic HTML creation + * functionality through server side servlet processing. + * + */ + +@WebServlet(name = "PingServletSetContentLength", urlPatterns = { "/servlet/PingServletSetContentLength" }) +public class PingServletSetContentLength extends HttpServlet { + + private static final long serialVersionUID = 8731300373855056661L; + + /** + * forwards post requests to the doGet method Creation date: (02/07/2013 + * 10:52:39 AM) + * + * @param res + * javax.servlet.http.HttpServletRequest + * @param res2 + * javax.servlet.http.HttpServletResponse + */ + @Override + public void doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { + doGet(req, res); + } + + /** + * this is the main method of the servlet that will service all get + * requests. + * + * @param request + * HttpServletRequest + * @param responce + * HttpServletResponce + **/ + @Override + public void doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { + try { + res.setContentType("text/html"); + String lengthParam = req.getParameter("contentLength"); + Integer length; + + if (lengthParam == null) { + length = 0; + } else { + length = Integer.parseInt(lengthParam); + } + + ServletOutputStream out = res.getOutputStream(); + + // Add characters (a's) to the SOS to equal the requested length + // 167 is the smallest length possible. + + int i = 0; + String buffer = ""; + + while (i + 167 < length) { + buffer = buffer + "a"; + i++; + } + + out.println("Ping Servlet" + + "

    Ping Servlet
    " + buffer + + "
    "); + } catch (Exception e) { + Log.error(e, "PingServlet.doGet(...): general exception caught"); + res.sendError(500, e.toString()); + + } + } + + /** + * returns a string of information about the servlet + * + * @return info String: contains info about the servlet + **/ + @Override + public String getServletInfo() { + return "Basic dynamic HTML generation through a servlet, with " + "contentLength set by contentLength parameter."; + } + + /** + * called when the class is loaded to initialize the servlet + * + * @param config + * ServletConfig: + **/ + @Override + public void init(ServletConfig config) throws ServletException { + super.init(config); + } +} \ No newline at end of file diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingServletWriter.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingServletWriter.java new file mode 100644 index 00000000..bda01cd8 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingServletWriter.java @@ -0,0 +1,110 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.prims; + +import java.io.IOException; + +import javax.servlet.ServletConfig; +import javax.servlet.ServletException; +import javax.servlet.annotation.WebServlet; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import com.ibm.websphere.samples.daytrader.util.Log; + +/** + * + * PingServlet extends PingServlet by using a PrintWriter for formatted output + * vs. the output stream used by {@link PingServlet}. + * + */ +@WebServlet(name = "PingServletWriter", urlPatterns = { "/servlet/PingServletWriter" }) +public class PingServletWriter extends HttpServlet { + + private static final long serialVersionUID = -267847365014523225L; + private static String initTime; + private static int hitCount; + + /** + * forwards post requests to the doGet method Creation date: (11/6/2000 + * 10:52:39 AM) + * + * @param res + * javax.servlet.http.HttpServletRequest + * @param res2 + * javax.servlet.http.HttpServletResponse + */ + @Override + public void doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { + doGet(req, res); + } + + /** + * this is the main method of the servlet that will service all get + * requests. + * + * @param request + * HttpServletRequest + * @param responce + * HttpServletResponce + **/ + @Override + public void doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { + try { + res.setContentType("text/html"); + + // The following 2 lines are the difference between PingServlet and + // PingServletWriter + // the latter uses a PrintWriter for output versus a binary output + // stream. + // ServletOutputStream out = res.getOutputStream(); + java.io.PrintWriter out = res.getWriter(); + hitCount++; + out.println("Ping Servlet Writer" + + "

    Ping Servlet Writer:
    Init time : " + + initTime + "

    Hit Count: " + hitCount + ""); + } catch (Exception e) { + Log.error(e, "PingServletWriter.doGet(...): general exception caught"); + res.sendError(500, e.toString()); + } + } + + /** + * returns a string of information about the servlet + * + * @return info String: contains info about the servlet + **/ + + @Override + public String getServletInfo() { + return "Basic dynamic HTML generation through a servlet using a PrintWriter"; + } + + /** + * called when the class is loaded to initialize the servlet + * + * @param config + * ServletConfig: + **/ + @Override + public void init(ServletConfig config) throws ServletException { + super.init(config); + hitCount = 0; + initTime = new java.util.Date().toString(); + + } +} \ No newline at end of file diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingSession1.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingSession1.java new file mode 100644 index 00000000..3abb342b --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingSession1.java @@ -0,0 +1,136 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.prims; + +import java.io.IOException; +import java.io.PrintWriter; + +import javax.servlet.ServletConfig; +import javax.servlet.ServletException; +import javax.servlet.annotation.WebServlet; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import javax.servlet.http.HttpSession; + +import com.ibm.websphere.samples.daytrader.util.Log; + +/** + * + * PingHTTPSession1 - SessionID tests fundamental HTTP session functionality by + * creating a unique session ID for each individual user. The ID is stored in + * the users session and is accessed and displayed on each user request. + * + */ +@WebServlet(name = "PingSession1", urlPatterns = { "/servlet/PingSession1" }) +public class PingSession1 extends HttpServlet { + private static final long serialVersionUID = -3703858656588519807L; + private static int count; + // For each new session created, add a session ID of the form "sessionID:" + + // count + private static String initTime; + private static int hitCount; + + /** + * forwards post requests to the doGet method Creation date: (11/6/2000 + * 10:52:39 AM) + * + * @param res + * javax.servlet.http.HttpServletRequest + * @param res2 + * javax.servlet.http.HttpServletResponse + */ + @Override + public void doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { + doGet(req, res); + } + + /** + * this is the main method of the servlet that will service all get + * requests. + * + * @param request + * HttpServletRequest + * @param responce + * HttpServletResponce + **/ + @Override + public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { + HttpSession session = null; + try { + try { + // get the users session, if the user does not have a session + // create one. + session = request.getSession(true); + } catch (Exception e) { + Log.error(e, "PingSession1.doGet(...): error getting session"); + // rethrow the exception for handling in one place. + throw e; + } + + // Get the session data value + Integer ival = (Integer) session.getAttribute("sessiontest.counter"); + // if their is not a counter create one. + if (ival == null) { + ival = new Integer(count++); + session.setAttribute("sessiontest.counter", ival); + } + String SessionID = "SessionID:" + ival.toString(); + + // Output the page + response.setContentType("text/html"); + response.setHeader("SessionKeyTest-SessionID", SessionID); + + PrintWriter out = response.getWriter(); + out.println("HTTP Session Key Test

    HTTP Session Test 1: Session Key
    Init time: " + + initTime + "

    "); + hitCount++; + out.println("Hit Count: " + hitCount + "
    Your HTTP Session key is " + SessionID + "
    "); + } catch (Exception e) { + // log the excecption + Log.error(e, "PingSession1.doGet(..l.): error."); + // set the server responce to 500 and forward to the web app defined + // error page + response.sendError(500, "PingSession1.doGet(...): error. " + e.toString()); + } + } + + /** + * returns a string of information about the servlet + * + * @return info String: contains info about the servlet + **/ + + @Override + public String getServletInfo() { + return "HTTP Session Key: Tests management of a read only unique id"; + } + + /** + * called when the class is loaded to initialize the servlet + * + * @param config + * ServletConfig: + **/ + @Override + public void init(ServletConfig config) throws ServletException { + super.init(config); + count = 0; + hitCount = 0; + initTime = new java.util.Date().toString(); + + } +} \ No newline at end of file diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingSession2.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingSession2.java new file mode 100644 index 00000000..9a47f87a --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingSession2.java @@ -0,0 +1,145 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.prims; + +import java.io.IOException; +import java.io.PrintWriter; + +import javax.servlet.ServletConfig; +import javax.servlet.ServletException; +import javax.servlet.annotation.WebServlet; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import javax.servlet.http.HttpSession; + +import com.ibm.websphere.samples.daytrader.util.Log; + +/** + * + * PingHTTPSession2 session create/destroy further extends the previous test by + * invalidating the HTTP Session on every 5th user access. This results in + * testing HTTPSession create and destroy + * + */ +@WebServlet(name = "PingSession2", urlPatterns = { "/servlet/PingSession2" }) +public class PingSession2 extends HttpServlet { + + private static final long serialVersionUID = -273579463475455800L; + private static String initTime; + private static int hitCount; + + /** + * forwards post requests to the doGet method Creation date: (11/6/2000 + * 10:52:39 AM) + * + * @param res + * javax.servlet.http.HttpServletRequest + * @param res2 + * javax.servlet.http.HttpServletResponse + */ + @Override + public void doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { + doGet(req, res); + } + + /** + * this is the main method of the servlet that will service all get + * requests. + * + * @param request + * HttpServletRequest + * @param responce + * HttpServletResponce + **/ + @Override + public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { + HttpSession session = null; + try { + try { + session = request.getSession(true); + } catch (Exception e) { + Log.error(e, "PingSession2.doGet(...): error getting session"); + // rethrow the exception for handling in one place. + throw e; + + } + + // Get the session data value + Integer ival = (Integer) session.getAttribute("sessiontest.counter"); + // if there is not a counter then create one. + if (ival == null) { + ival = new Integer(1); + } else { + ival = new Integer(ival.intValue() + 1); + } + session.setAttribute("sessiontest.counter", ival); + // if the session count is equal to five invalidate the session + if (ival.intValue() == 5) { + session.invalidate(); + } + + try { + // Output the page + response.setContentType("text/html"); + response.setHeader("SessionTrackingTest-counter", ival.toString()); + + PrintWriter out = response.getWriter(); + out.println("Session Tracking Test 2

    HTTP Session Test 2: Session create/invalidate
    Init time: " + + initTime + "

    "); + hitCount++; + out.println("Hit Count: " + hitCount + "
    Session hits: " + ival + "
    "); + } catch (Exception e) { + Log.error(e, "PingSession2.doGet(...): error getting session information"); + // rethrow the exception for handling in one place. + throw e; + } + + } + + catch (Exception e) { + // log the excecption + Log.error(e, "PingSession2.doGet(...): error."); + // set the server responce to 500 and forward to the web app defined + // error page + response.sendError(500, "PingSession2.doGet(...): error. " + e.toString()); + } + } // end of the method + + /** + * returns a string of information about the servlet + * + * @return info String: contains info about the servlet + **/ + @Override + public String getServletInfo() { + return "HTTP Session Key: Tests management of a read/write unique id"; + } + + /** + * called when the class is loaded to initialize the servlet + * + * @param config + * ServletConfig: + **/ + @Override + public void init(ServletConfig config) throws ServletException { + super.init(config); + hitCount = 0; + initTime = new java.util.Date().toString(); + + } +} \ No newline at end of file diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingSession3.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingSession3.java new file mode 100644 index 00000000..7e49518e --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingSession3.java @@ -0,0 +1,182 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.prims; + +import java.io.IOException; +import java.io.PrintWriter; + +import javax.servlet.ServletConfig; +import javax.servlet.ServletException; +import javax.servlet.annotation.WebServlet; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import javax.servlet.http.HttpSession; + +import com.ibm.websphere.samples.daytrader.util.Log; + +/** + * + * PingHTTPSession3 tests the servers ability to manage and persist large + * HTTPSession data objects. The servlet creates the large custom java object + * {@link PingSession3Object}. This large session object is retrieved and stored + * to the session on each user request. The default settings result in approx + * 2024 bits being retrieved and stored upon each request. + * + */ +@WebServlet(name = "PingSession3", urlPatterns = { "/servlet/PingSession3" }) +public class PingSession3 extends HttpServlet { + private static final long serialVersionUID = -6129599971684210414L; + private static int NUM_OBJECTS = 2; + private static String initTime = null; + private static int hitCount = 0; + + /** + * forwards post requests to the doGet method Creation date: (11/6/2000 + * 10:52:39 AM) + * + * @param res + * javax.servlet.http.HttpServletRequest + * @param res2 + * javax.servlet.http.HttpServletResponse + */ + @Override + public void doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { + doGet(req, res); + } + + /** + * this is the main method of the servlet that will service all get + * requests. + * + * @param request + * HttpServletRequest + * @param responce + * HttpServletResponce + **/ + @Override + public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { + + PrintWriter out = response.getWriter(); + // Using a StringBuffer to output all at once. + StringBuffer outputBuffer = new StringBuffer(); + HttpSession session = null; + PingSession3Object[] sessionData; + response.setContentType("text/html"); + + // this is a general try/catch block. The catch block at the end of this + // will forward the responce + // to an error page if there is an exception + try { + + try { + session = request.getSession(true); + } catch (Exception e) { + Log.error(e, "PingSession3.doGet(...): error getting session"); + // rethrow the exception for handling in one place. + throw e; + + } + // Each PingSession3Object in the PingSession3Object array is 1K in + // size + // NUM_OBJECTS sets the size of the array to allocate and thus set + // the size in KBytes of the session object + // NUM_OBJECTS can be initialized by the servlet + // Here we check for the request parameter to change the size and + // invalidate the session if it exists + // NOTE: Current user sessions will remain the same (i.e. when + // NUM_OBJECTS is changed, all user thread must be restarted + // for the change to fully take effect + + String num_objects; + if ((num_objects = request.getParameter("num_objects")) != null) { + // validate input + try { + int x = Integer.parseInt(num_objects); + if (x > 0) { + NUM_OBJECTS = x; + } + } catch (Exception e) { + Log.error(e, "PingSession3.doGet(...): input should be an integer, input=" + num_objects); + } // revert to current value on exception + + outputBuffer.append(" Session object size set to " + NUM_OBJECTS + "K bytes "); + if (session != null) { + session.invalidate(); + } + out.print(outputBuffer.toString()); + out.close(); + return; + } + + // Get the session data value + sessionData = (PingSession3Object[]) session.getAttribute("sessiontest.sessionData"); + if (sessionData == null) { + sessionData = new PingSession3Object[NUM_OBJECTS]; + for (int i = 0; i < NUM_OBJECTS; i++) { + sessionData[i] = new PingSession3Object(); + } + } + + session.setAttribute("sessiontest.sessionData", sessionData); + + // Each PingSession3Object is about 1024 bits, there are 8 bits in a + // byte. + int num_bytes = (NUM_OBJECTS * 1024) / 8; + response.setHeader("SessionTrackingTest-largeSessionData", num_bytes + "bytes"); + + outputBuffer + .append("Session Large Data Test

    HTTP Session Test 3: Large Data
    Init time: ") + .append(initTime).append("

    "); + hitCount++; + outputBuffer.append("Hit Count: ").append(hitCount) + .append("
    Session object updated. Session Object size = " + num_bytes + " bytes
    "); + // output the Buffer to the printWriter. + out.println(outputBuffer.toString()); + + } catch (Exception e) { + // log the excecption + Log.error(e, "PingSession3.doGet(..l.): error."); + // set the server responce to 500 and forward to the web app defined + // error page + response.sendError(500, "PingSession3.doGet(...): error. " + e.toString()); + } + } + + /** + * returns a string of information about the servlet + * + * @return info String: contains info about the servlet + **/ + @Override + public String getServletInfo() { + return "HTTP Session Object: Tests management of a large custom session class"; + } + + /** + * called when the class is loaded to initialize the servlet + * + * @param config + * ServletConfig: + **/ + @Override + public void init(ServletConfig config) throws ServletException { + super.init(config); + hitCount = 0; + initTime = new java.util.Date().toString(); + + } +} \ No newline at end of file diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingSession3Object.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingSession3Object.java new file mode 100644 index 00000000..362f0a93 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingSession3Object.java @@ -0,0 +1,92 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.prims; + +import java.io.Serializable; + +/** + * + * An object that contains approximately 1024 bits of information. This is used + * by {@link PingSession3} + * + */ +public class PingSession3Object implements Serializable { + // PingSession3Object represents a BLOB of session data of various. + // Each instantiation of this class is approximately 1K in size (not + // including overhead for arrays and Strings) + // Using different datatype exercises the various serialization algorithms + // for each type + + private static final long serialVersionUID = 1452347702903504717L; + byte[] byteVal = new byte[16]; // 8 * 16 = 128 bits + char[] charVal = new char[8]; // 16 * 8 = 128 bits + int a, b, c, d; // 4 * 32 = 128 bits + float e, f, g, h; // 4 * 32 = 128 bits + double i, j; // 2 * 64 = 128 bits + // Primitive type size = ~5*128= 640 + + String s1 = new String("123456789012"); + String s2 = new String("abcdefghijkl"); + + // String type size = ~2*12*16 = 384 + // Total blob size (w/o overhead) = 1024 + + // The Session blob must be filled with data to avoid compression of the + // blob during serialization + PingSession3Object() { + int index; + byte b = 0x8; + for (index = 0; index < 16; index++) { + byteVal[index] = (byte) (b + 2); + } + + char c = 'a'; + for (index = 0; index < 8; index++) { + charVal[index] = (char) (c + 2); + } + + a = 1; + b = 2; + c = 3; + d = 5; + e = (float) 7.0; + f = (float) 11.0; + g = (float) 13.0; + h = (float) 17.0; + i = 19.0; + j = 23.0; + } + /** + * Main method to test the serialization of the Session Data blob object + * Creation date: (4/3/2000 3:07:34 PM) + * + * @param args + * java.lang.String[] + */ + + /** + * Since the following main method were written for testing purpose, we + * comment them out public static void main(String[] args) { try { + * PingSession3Object data = new PingSession3Object(); + * + * FileOutputStream ostream = new + * FileOutputStream("c:\\temp\\datablob.xxx"); ObjectOutputStream p = new + * ObjectOutputStream(ostream); p.writeObject(data); p.flush(); + * ostream.close(); } catch (Exception e) { System.out.println("Exception: " + * + e.toString()); } } + */ + +} \ No newline at end of file diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingUpgradeServlet.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingUpgradeServlet.java new file mode 100644 index 00000000..339986ed --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingUpgradeServlet.java @@ -0,0 +1,157 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.ibm.websphere.samples.daytrader.web.prims; + +import java.io.IOException; + +import javax.servlet.ReadListener; +import javax.servlet.ServletException; +import javax.servlet.ServletInputStream; +import javax.servlet.ServletOutputStream; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import javax.servlet.http.HttpUpgradeHandler; +import javax.servlet.http.WebConnection; +import javax.servlet.annotation.WebServlet; + +import com.ibm.websphere.samples.daytrader.util.Log; + +@WebServlet(name = "PingUpgradeServlet", urlPatterns = { "/servlet/PingUpgradeServlet" }, asyncSupported=true) +public class PingUpgradeServlet extends HttpServlet { + private static final long serialVersionUID = -6955518532146927509L; + + + @Override + protected void doGet(final HttpServletRequest req, final HttpServletResponse res) throws ServletException, IOException { + doPost(req,res); + } + + @Override + protected void doPost(final HttpServletRequest req, final HttpServletResponse res) throws ServletException, IOException { + + + Log.trace("PingUpgradeServlet:doPost"); + + + if ("echo".equals(req.getHeader("Upgrade"))) { + + + Log.trace("PingUpgradeServlet:doPost -- found echo, doing upgrade"); + + + res.setStatus(101); + res.setHeader("Upgrade", "echo"); + res.setHeader("Connection", "Upgrade"); + + req.upgrade(Handler.class); + + } else { + + + Log.trace("PingUpgradeServlet:doPost -- did not find echo, no upgrade"); + + + res.getWriter().println("No upgrade: " + req.getHeader("Upgrade")); + } + } + + public static class Handler implements HttpUpgradeHandler { + + @Override + public void init(final WebConnection wc) { + Listener listener = null; + try { + listener = new Listener(wc); + + } catch (IOException e1) { + // TODO Auto-generated catch block + e1.printStackTrace(); + } + + try { + + Log.trace("PingUpgradeServlet$Handler.init() -- Initializing Handler"); + + + // flush headers if any + wc.getOutputStream().flush(); + wc.getInputStream().setReadListener(listener); + + } catch (IOException e) { + throw new IllegalArgumentException(e); + } + } + + @Override + public void destroy() { + Log.trace("PingUpgradeServlet$Handler.destroy() -- Destroying Handler"); + } + } + + private static class Listener implements ReadListener { + private final WebConnection connection; + private ServletInputStream input = null; + private ServletOutputStream output = null; + + private Listener(final WebConnection connection) throws IOException { + this.connection = connection; + this.input = connection.getInputStream(); + this.output = connection.getOutputStream(); + } + + @Override + public void onDataAvailable() throws IOException { + + Log.trace("PingUpgradeServlet$Listener.onDataAvailable() called"); + + byte[] data = new byte[1024]; + int len = -1; + + while (input.isReady() && (len = input.read(data)) != -1) { + String dataRead = new String(data, 0, len); + + Log.trace("PingUpgradeServlet$Listener.onDataAvailable() -- Adding data to queue -->" + dataRead + "<--"); + + output.println(dataRead); + output.flush(); + } + + closeConnection(); + } + + private void closeConnection() { + try { + connection.close(); + } catch (Exception e) { + + Log.error(e.toString()); + } + } + + + @Override + public void onAllDataRead() throws IOException { + closeConnection(); + } + + @Override + public void onError(final Throwable t) { + closeConnection(); + } + } +} \ No newline at end of file diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingWebSocketBinary.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingWebSocketBinary.java new file mode 100644 index 00000000..5f55fbc8 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingWebSocketBinary.java @@ -0,0 +1,65 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.ibm.websphere.samples.daytrader.web.prims; + +import java.io.IOException; +import java.nio.ByteBuffer; + +import javax.websocket.CloseReason; +import javax.websocket.EndpointConfig; +import javax.websocket.OnClose; +import javax.websocket.OnError; +import javax.websocket.OnMessage; +import javax.websocket.OnOpen; +import javax.websocket.Session; +import javax.websocket.server.ServerEndpoint; + +/** This class a simple websocket that echos the binary it has been sent. */ + +@ServerEndpoint(value = "/pingBinary") +public class PingWebSocketBinary { + + private Session currentSession = null; + + @OnOpen + public void onOpen(final Session session, EndpointConfig ec) { + currentSession = session; + } + + @OnMessage + public void ping(ByteBuffer data) { + currentSession.getAsyncRemote().sendBinary(data); + } + + @OnError + public void onError(Throwable t) { + t.printStackTrace(); + } + + @OnClose + public void onClose(Session session, CloseReason reason) { + + try { + if (session.isOpen()) { + session.close(); + } + } catch (IOException e) { + e.printStackTrace(); + } + } + +} diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingWebSocketJson.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingWebSocketJson.java new file mode 100644 index 00000000..fd0ab76f --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingWebSocketJson.java @@ -0,0 +1,116 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.ibm.websphere.samples.daytrader.web.prims; + +import java.io.IOException; + +import javax.enterprise.concurrent.ManagedThreadFactory; +import javax.naming.InitialContext; +import javax.naming.NamingException; +import javax.websocket.CloseReason; +import javax.websocket.EndpointConfig; +import javax.websocket.OnClose; +import javax.websocket.OnError; +import javax.websocket.OnMessage; +import javax.websocket.OnOpen; +import javax.websocket.Session; +import javax.websocket.server.ServerEndpoint; + +import com.ibm.websphere.samples.daytrader.web.websocket.JsonDecoder; +import com.ibm.websphere.samples.daytrader.web.websocket.JsonEncoder; +import com.ibm.websphere.samples.daytrader.web.websocket.JsonMessage; + +/** This class a simple websocket that sends the number of times it has been pinged. */ + +@ServerEndpoint(value = "/pingWebSocketJson",encoders=JsonEncoder.class ,decoders=JsonDecoder.class) +public class PingWebSocketJson { + + private Session currentSession = null; + private Integer sentHitCount = null; + private Integer receivedHitCount = null; + + @OnOpen + public void onOpen(final Session session, EndpointConfig ec) { + currentSession = session; + sentHitCount = 0; + receivedHitCount = 0; + + + InitialContext context; + ManagedThreadFactory mtf = null; + + try { + context = new InitialContext(); + mtf = (ManagedThreadFactory) context.lookup("java:comp/DefaultManagedThreadFactory"); + + } catch (NamingException e1) { + // TODO Auto-generated catch block + e1.printStackTrace(); + } + + Thread thread = mtf.newThread(new Runnable() { + + @Override + public void run() { + + try { + + Thread.sleep(500); + + while (currentSession.isOpen()) { + sentHitCount++; + + JsonMessage response = new JsonMessage(); + response.setKey("sentHitCount"); + response.setValue(sentHitCount.toString()); + currentSession.getAsyncRemote().sendObject(response); + + Thread.sleep(100); + } + + + } catch (InterruptedException e) { + e.printStackTrace(); + } + } + + }); + + thread.start(); + + } + + @OnMessage + public void ping(JsonMessage message) throws IOException { + receivedHitCount++; + JsonMessage response = new JsonMessage(); + response.setKey("receivedHitCount"); + response.setValue(receivedHitCount.toString()); + currentSession.getAsyncRemote().sendObject(response); + } + + @OnError + public void onError(Throwable t) { + t.printStackTrace(); + } + + @OnClose + public void onClose(Session session, CloseReason reason) { + + } + +} diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingWebSocketTextAsync.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingWebSocketTextAsync.java new file mode 100644 index 00000000..90d8350d --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingWebSocketTextAsync.java @@ -0,0 +1,70 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.prims; + +import javax.websocket.CloseReason; +import javax.websocket.EndpointConfig; +import javax.websocket.OnClose; +import javax.websocket.OnError; +import javax.websocket.OnMessage; +import javax.websocket.OnOpen; +import javax.websocket.SendHandler; +import javax.websocket.SendResult; +import javax.websocket.Session; +import javax.websocket.server.ServerEndpoint; + +/** This class a simple websocket that sends the number of times it has been pinged. */ + +@ServerEndpoint(value = "/pingTextAsync") +public class PingWebSocketTextAsync { + + private Session currentSession = null; + private Integer hitCount = null; + + @OnOpen + public void onOpen(final Session session, EndpointConfig ec) { + currentSession = session; + hitCount = 0; + } + + @OnMessage + public void ping(String text) { + + + hitCount++; + currentSession.getAsyncRemote().sendText(hitCount.toString(), new SendHandler() { + + @Override + public void onResult(SendResult result) { + if (!result.isOK()) { + System.out.println("NOT OK"); + } + } + } + ); + } + + @OnError + public void onError(Throwable t) { + t.printStackTrace(); + } + + @OnClose + public void onClose(Session session, CloseReason reason) { + + } + +} diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingWebSocketTextSync.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingWebSocketTextSync.java new file mode 100644 index 00000000..facdbcc6 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/PingWebSocketTextSync.java @@ -0,0 +1,67 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.prims; + +import java.io.IOException; +//import java.util.Collections; +//import java.util.HashSet; +//import java.util.Set; + +import javax.websocket.CloseReason; +import javax.websocket.EndpointConfig; +import javax.websocket.OnClose; +import javax.websocket.OnError; +import javax.websocket.OnMessage; +import javax.websocket.OnOpen; +import javax.websocket.Session; +import javax.websocket.server.ServerEndpoint; + +/** This class a simple websocket that sends the number of times it has been pinged. */ + +@ServerEndpoint(value = "/pingTextSync") +public class PingWebSocketTextSync { + + private Session currentSession = null; + private Integer hitCount = null; + + @OnOpen + public void onOpen(final Session session, EndpointConfig ec) { + currentSession = session; + hitCount = 0; + } + + @OnMessage + public void ping(String text) { + hitCount++; + + try { + currentSession.getBasicRemote().sendText(hitCount.toString()); + } catch (IOException e) { + e.printStackTrace(); + } + } + + @OnError + public void onError(Throwable t) { + t.printStackTrace(); + } + + @OnClose + public void onClose(Session session, CloseReason reason) { + + } + +} diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/beanval/CDIMethodConstraintBean.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/beanval/CDIMethodConstraintBean.java new file mode 100644 index 00000000..755014a3 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/beanval/CDIMethodConstraintBean.java @@ -0,0 +1,47 @@ +/** + * (C) Copyright IBM Corporation 2019. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.prims.beanval; + +import java.time.LocalDateTime; +import java.util.ArrayList; +import java.util.List; + +import javax.enterprise.context.RequestScoped; +import javax.validation.constraints.Min; +import javax.validation.constraints.NotNull; +import javax.validation.constraints.PastOrPresent; +import javax.validation.constraints.Size; + +@RequestScoped +public class CDIMethodConstraintBean { + + private static int hitCount = 0; + private List list = new ArrayList<>(); + + // Dumb primitive, beanval checks that the date passed in is valid and that the + // return is > 0; + @Min(1) + public int getHitCount(@NotNull @PastOrPresent LocalDateTime now) { + list.add(++hitCount); + return hitCount; + } + + @Size(max=1) + public List<@Min(1) Integer> hitList() { + return list; + } + +} diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/beanval/PingServletBeanValCDI.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/beanval/PingServletBeanValCDI.java new file mode 100644 index 00000000..e9654526 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/beanval/PingServletBeanValCDI.java @@ -0,0 +1,107 @@ +/** + * (C) Copyright IBM Corporation 2019. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.prims.beanval; + +import java.io.IOException; +import java.time.LocalDateTime; + +import javax.inject.Inject; +import javax.servlet.ServletConfig; +import javax.servlet.ServletException; +import javax.servlet.ServletOutputStream; +import javax.servlet.annotation.WebServlet; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import com.ibm.websphere.samples.daytrader.util.Log; + +@WebServlet(name = "PingServletBeanValCDI", urlPatterns = { "/servlet/PingServletBeanValCDI" }) +public class PingServletBeanValCDI extends HttpServlet { + + @Inject CDIMethodConstraintBean hitCountBean; + + private static final long serialVersionUID = 7097023236709683760L; + private static LocalDateTime initTime; + + + /** + * forwards post requests to the doGet method Creation date: (11/6/2000 + * 10:52:39 AM) + * + * @param res + * javax.servlet.http.HttpServletRequest + * @param res2 + * javax.servlet.http.HttpServletResponse + */ + @Override + public void doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { + doGet(req, res); + } + + /** + * this is the main method of the servlet that will service all get + * requests. + * + * @param request + * HttpServletRequest + * @param responce + * HttpServletResponce + **/ + @Override + public void doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { + try { + res.setContentType("text/html"); + + ServletOutputStream out = res.getOutputStream(); + + int currentHitCount = hitCountBean.getHitCount(initTime); + hitCountBean.hitList(); + + out.println("Ping Servlet Bean Validation CDI" + + "

    Ping Servlet Bean Validation CDI
    Init time : " + initTime + + "

    Hit Count: " + currentHitCount + ""); + } catch (Exception e) { + Log.error(e, "PingServlet.doGet(...): general exception caught"); + res.sendError(500, e.toString()); + + } + } + + /** + * returns a string of information about the servlet + * + * @return info String: contains info about the servlet + **/ + @Override + public String getServletInfo() { + return "Basic dynamic HTML generation through a servlet"; + } + + /** + * called when the class is loaded to initialize the servlet + * + * @param config + * ServletConfig: + **/ + @Override + public void init(ServletConfig config) throws ServletException { + super.init(config); + initTime = LocalDateTime.now(); + + + } +} diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/beanval/PingServletBeanValSimple1.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/beanval/PingServletBeanValSimple1.java new file mode 100644 index 00000000..a137556e --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/beanval/PingServletBeanValSimple1.java @@ -0,0 +1,106 @@ +/** + * (C) Copyright IBM Corporation 2019. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.prims.beanval; + +import java.io.IOException; +import java.time.LocalDateTime; + +import javax.servlet.ServletConfig; +import javax.servlet.ServletException; +import javax.servlet.ServletOutputStream; +import javax.servlet.annotation.WebServlet; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import com.ibm.websphere.samples.daytrader.util.Log; + +@WebServlet(name = "PingServletBeanValSimple1", urlPatterns = { "/servlet/PingServletBeanValSimple1" }) +public class PingServletBeanValSimple1 extends HttpServlet { + + private static final long serialVersionUID = 7097023236709683760L; + private static LocalDateTime initTime; + private static int hitCount = 0; + + + /** + * forwards post requests to the doGet method Creation date: (11/6/2000 + * 10:52:39 AM) + * + * @param res + * javax.servlet.http.HttpServletRequest + * @param res2 + * javax.servlet.http.HttpServletResponse + */ + @Override + public void doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { + doGet(req, res); + } + + /** + * this is the main method of the servlet that will service all get + * requests. + * + * @param request + * HttpServletRequest + * @param responce + * HttpServletResponce + **/ + @Override + public void doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { + try { + res.setContentType("text/html"); + + SimpleBean1 simpleBean1 = new SimpleBean1(); + simpleBean1.checkInjectionValidation(); + + ServletOutputStream out = res.getOutputStream(); + + int currentHitCount = ++hitCount; + out.println("Ping Servlet Bean Validation Simple" + + "

    Ping Servlet Bean Validation Simple
    Init time : " + initTime + + "

    Hit Count: " + currentHitCount + ""); + } catch (Exception e) { + Log.error(e, "PingServlet.doGet(...): general exception caught"); + res.sendError(500, e.toString()); + + } + } + + /** + * returns a string of information about the servlet + * + * @return info String: contains info about the servlet + **/ + @Override + public String getServletInfo() { + return "Basic dynamic HTML generation through a servlet"; + } + + /** + * called when the class is loaded to initialize the servlet + * + * @param config + * ServletConfig: + **/ + @Override + public void init(ServletConfig config) throws ServletException { + super.init(config); + initTime = LocalDateTime.now(); + + + } +} diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/beanval/PingServletBeanValSimple2.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/beanval/PingServletBeanValSimple2.java new file mode 100644 index 00000000..7bbc238b --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/beanval/PingServletBeanValSimple2.java @@ -0,0 +1,106 @@ +/** + * (C) Copyright IBM Corporation 2019. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.prims.beanval; + +import java.io.IOException; +import java.time.LocalDateTime; + +import javax.servlet.ServletConfig; +import javax.servlet.ServletException; +import javax.servlet.ServletOutputStream; +import javax.servlet.annotation.WebServlet; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import com.ibm.websphere.samples.daytrader.util.Log; + +@WebServlet(name = "PingServletBeanValSimple2", urlPatterns = { "/servlet/PingServletBeanValSimple2" }) +public class PingServletBeanValSimple2 extends HttpServlet { + + private static final long serialVersionUID = 7097023236709683760L; + private static LocalDateTime initTime; + private static int hitCount = 0; + + + /** + * forwards post requests to the doGet method Creation date: (11/6/2000 + * 10:52:39 AM) + * + * @param res + * javax.servlet.http.HttpServletRequest + * @param res2 + * javax.servlet.http.HttpServletResponse + */ + @Override + public void doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { + doGet(req, res); + } + + /** + * this is the main method of the servlet that will service all get + * requests. + * + * @param request + * HttpServletRequest + * @param responce + * HttpServletResponce + **/ + @Override + public void doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { + try { + res.setContentType("text/html"); + + SimpleBean2 simpleBean2 = new SimpleBean2(); + simpleBean2.checkInjectionValidation(); + + ServletOutputStream out = res.getOutputStream(); + + int currentHitCount = ++hitCount; + out.println("Ping Servlet Bean Validation Simple" + + "

    Ping Servlet Bean Validation Simple
    Init time : " + initTime + + "

    Hit Count: " + currentHitCount + ""); + } catch (Exception e) { + Log.error(e, "PingServlet.doGet(...): general exception caught"); + res.sendError(500, e.toString()); + + } + } + + /** + * returns a string of information about the servlet + * + * @return info String: contains info about the servlet + **/ + @Override + public String getServletInfo() { + return "Basic dynamic HTML generation through a servlet"; + } + + /** + * called when the class is loaded to initialize the servlet + * + * @param config + * ServletConfig: + **/ + @Override + public void init(ServletConfig config) throws ServletException { + super.init(config); + initTime = LocalDateTime.now(); + + + } +} diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/beanval/SimpleBean1.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/beanval/SimpleBean1.java new file mode 100644 index 00000000..6ac7752d --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/beanval/SimpleBean1.java @@ -0,0 +1,116 @@ +/** + * (C) Copyright IBM Corporation 2019. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.prims.beanval; + +import java.util.Set; +import java.util.logging.Level; +import java.util.logging.Logger; + +import javax.naming.Context; +import javax.naming.InitialContext; +import javax.validation.ConstraintViolation; +import javax.validation.Validator; +import javax.validation.ValidatorFactory; +import javax.validation.constraints.Max; +import javax.validation.constraints.Min; +import javax.validation.constraints.NotNull; +import javax.validation.constraints.Pattern; +import javax.validation.constraints.Size; + +public class SimpleBean1 { + /** + * Logging support and the static initializer for this class. Used to trace file + * version information. This will display the current version of the class in the + * debug log at the time the class is loaded. + */ + private static final String thisClass = SimpleBean1.class.getName(); + private static Logger traceLogger = Logger.getLogger(thisClass); + private static ValidatorFactory validatorFactory = null; + private Validator validator; + + @Min(1) + int iMin = 1; + @Max(1) + Integer iMax = 1; + @Size(min = 1) + int[] iMinArray = { 1 }; + @Size(max = 1) + Integer[] iMaxArray = { 1 }; + @Pattern(regexp = "[a-z][a-z]*", message = "go to your room!") + String pattern = "mypattern"; + + + + boolean setToFail = false; + + + + public SimpleBean1() throws Exception { + if (validatorFactory == null) { + Context nContext = new InitialContext(); + validatorFactory = (ValidatorFactory) nContext.lookup("java:comp/ValidatorFactory"); + + } + validator = validatorFactory.getValidator(); + } + + @NotNull + public String getDesc() { + return pattern; + } + + public void checkInjectionValidation() { + + traceLogger.entering(thisClass, "checkInjectionValidation", this); + + Set> cvSet = validator.validate(this); + + if (!cvSet.isEmpty()) { + String msg = formatConstraintViolations(cvSet); + traceLogger.log(Level.INFO, "Some reason cvSet was not null: " + cvSet + ", " + msg); + + throw new IllegalStateException("validation should not have found constraints: " + msg); + } + + traceLogger.exiting(thisClass, "checkInjectionValidation "); + } + + + @Override + public String toString() { + String result = "iMin:" + iMin + " iMax:" + iMax + " iMinArray:" + iMinArray + " iMaxArray:" + iMaxArray + " pattern:" + pattern + + " setToFail:" + setToFail; + + return result; + } + + /** + * Convert the constraint violations for use within WAS diagnostic logs. + * + * @return a String representation of the constraint violations formatted one per line and uniformly indented. + */ + public String formatConstraintViolations(Set> cvSet) { + traceLogger.entering(thisClass, "formatConstraintViolations " + cvSet); + + StringBuffer msg = new StringBuffer(); + for (ConstraintViolation cv : cvSet) { + msg.append("\n\t" + cv.toString()); + } + + traceLogger.exiting(thisClass, "formatConstraintViolations " + msg); + return msg.toString(); + } +} diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/beanval/SimpleBean2.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/beanval/SimpleBean2.java new file mode 100644 index 00000000..a899e8d2 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/beanval/SimpleBean2.java @@ -0,0 +1,47 @@ +/** + * (C) Copyright IBM Corporation 2019. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.prims.beanval; + +import java.time.LocalDateTime; +import java.util.ArrayList; +import java.util.List; + +import javax.validation.constraints.PositiveOrZero; +import javax.validation.constraints.FutureOrPresent; +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.PastOrPresent; + +public class SimpleBean2 extends SimpleBean1 { + + private List<@PositiveOrZero Integer> numbers= new ArrayList(); + private List<@NotBlank String> strings = new ArrayList(); + + @PastOrPresent + LocalDateTime now = LocalDateTime.now(); + + @FutureOrPresent + LocalDateTime future = LocalDateTime.now().plusDays(1); + + public SimpleBean2() throws Exception { + super(); + + numbers.add(1); + numbers.add(2); + + strings.add("string1"); + strings.add("string2"); + } +} diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/cdi/CDIEventProducer.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/cdi/CDIEventProducer.java new file mode 100644 index 00000000..ef99073d --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/cdi/CDIEventProducer.java @@ -0,0 +1,49 @@ +/** + * (C) Copyright IBM Corporation 2019. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.prims.cdi; + +import javax.annotation.Resource; +import javax.enterprise.concurrent.ManagedExecutorService; +import javax.enterprise.context.ApplicationScoped; +import javax.enterprise.event.Event; +import javax.enterprise.event.NotificationOptions; +import javax.inject.Inject; + +@ApplicationScoped //? +public class CDIEventProducer { + + @Resource + private ManagedExecutorService mes; + + @Inject + @Hit + Event hitCountEvent; + + @Inject + @HitAsync + Event hitCountEventAsync; + + public void produceSyncEvent() { + hitCountEvent.fire("hitCount++"); + } + + public void produceAsyncEvent() { + hitCountEventAsync.fireAsync("hitCount++", NotificationOptions.builder().setExecutor(mes).build()); + } + + + +} diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/cdi/Hit.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/cdi/Hit.java new file mode 100644 index 00000000..6eb830a3 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/cdi/Hit.java @@ -0,0 +1,29 @@ +/** + * (C) Copyright IBM Corporation 2019. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.prims.cdi; + +import java.lang.annotation.ElementType; +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; +import java.lang.annotation.Target; + +import javax.inject.Qualifier; + +@Qualifier +@Retention(RetentionPolicy.RUNTIME) +@Target({ElementType.METHOD, ElementType.FIELD, ElementType.PARAMETER, ElementType.TYPE}) +public @interface Hit { +} diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/cdi/HitAsync.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/cdi/HitAsync.java new file mode 100644 index 00000000..addca624 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/cdi/HitAsync.java @@ -0,0 +1,29 @@ +/** + * (C) Copyright IBM Corporation 2019. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.prims.cdi; + +import java.lang.annotation.ElementType; +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; +import java.lang.annotation.Target; + +import javax.inject.Qualifier; + +@Qualifier +@Retention(RetentionPolicy.RUNTIME) +@Target({ElementType.METHOD, ElementType.FIELD, ElementType.PARAMETER, ElementType.TYPE}) +public @interface HitAsync { +} diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/cdi/PingCDIBean.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/cdi/PingCDIBean.java new file mode 100755 index 00000000..43e5a735 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/cdi/PingCDIBean.java @@ -0,0 +1,59 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.prims.cdi; + +import java.util.Set; + +import javax.enterprise.context.RequestScoped; +import javax.enterprise.inject.spi.Bean; +import javax.enterprise.inject.spi.BeanManager; +import javax.enterprise.inject.spi.CDI; +import javax.naming.InitialContext; + +@RequestScoped +@PingInterceptorBinding +public class PingCDIBean { + + private static int helloHitCount = 0; + private static int getBeanManagerHitCountJNDI = 0; + private static int getBeanManagerHitCountSPI = 0; + + + public int hello() { + return ++helloHitCount; + } + + public int getBeanMangerViaJNDI() throws Exception { + BeanManager beanManager = (BeanManager) new InitialContext().lookup("java:comp/BeanManager"); + Set> beans = beanManager.getBeans(Object.class); + if (beans.size() > 0) { + return ++getBeanManagerHitCountJNDI; + } + return 0; + + } + + public int getBeanMangerViaCDICurrent() throws Exception { + BeanManager beanManager = CDI.current().getBeanManager(); + Set> beans = beanManager.getBeans(Object.class); + + if (beans.size() > 0) { + return ++getBeanManagerHitCountSPI; + } + return 0; + + } +} diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/cdi/PingCDIJSFBean.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/cdi/PingCDIJSFBean.java new file mode 100755 index 00000000..e618788c --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/cdi/PingCDIJSFBean.java @@ -0,0 +1,33 @@ +/** + * (C) Copyright IBM Corporation 2016. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.prims.cdi; + +import java.io.Serializable; + +import javax.enterprise.context.SessionScoped; +import javax.inject.Named; + +@Named +@SessionScoped +public class PingCDIJSFBean implements Serializable { + + private static final long serialVersionUID = -7475815494313679416L; + private int hitCount = 0; + + public int getHitCount() { + return ++hitCount; + } +} diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/cdi/PingEJBIFace.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/cdi/PingEJBIFace.java new file mode 100755 index 00000000..28bd563f --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/cdi/PingEJBIFace.java @@ -0,0 +1,24 @@ +/** + * (C) Copyright IBM Corporation 2016. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.prims.cdi; + +/** + * EJB interface + */ +public interface PingEJBIFace { + + public String getMsg(); +} diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/cdi/PingEJBLocal.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/cdi/PingEJBLocal.java new file mode 100755 index 00000000..d9bf999b --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/cdi/PingEJBLocal.java @@ -0,0 +1,41 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.prims.cdi; + +import javax.ejb.Local; +import javax.ejb.Stateful; + +/** + * + */ +@Stateful +@Local +public class PingEJBLocal implements PingEJBIFace { + + private static int hitCount; + + /* + * (non-Javadoc) + * + * @see com.ibm.websphere.samples.daytrader.web.prims.EJBIFace#getMsg() + */ + @Override + public String getMsg() { + + return "PingEJBLocal: " + hitCount++; + } + +} diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/cdi/PingEJBLocalDecorator.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/cdi/PingEJBLocalDecorator.java new file mode 100755 index 00000000..dcfb07ba --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/cdi/PingEJBLocalDecorator.java @@ -0,0 +1,43 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.prims.cdi; + +import javax.annotation.Priority; +import javax.decorator.Decorator; +import javax.decorator.Delegate; +import javax.inject.Inject; +import javax.interceptor.Interceptor; + +@Decorator +@Priority(Interceptor.Priority.APPLICATION) +public class PingEJBLocalDecorator implements PingEJBIFace { + + /* + * (non-Javadoc) + * + * @see com.ibm.websphere.samples.daytrader.web.prims.EJBIFace#getMsg() + */ + @Delegate + @Inject + PingEJBIFace ejb; + + @Override + public String getMsg() { + + return "Decorated " + ejb.getMsg(); + } + +} diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/cdi/PingInterceptor.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/cdi/PingInterceptor.java new file mode 100755 index 00000000..dcc99693 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/cdi/PingInterceptor.java @@ -0,0 +1,42 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.prims.cdi; + +import java.io.Serializable; + +import javax.annotation.Priority; +import javax.interceptor.AroundInvoke; +import javax.interceptor.Interceptor; +import javax.interceptor.InvocationContext; + +/** + * + */ +@PingInterceptorBinding +@Interceptor +@Priority(Interceptor.Priority.APPLICATION) +public class PingInterceptor implements Serializable { + + /** */ + private static final long serialVersionUID = 1L; + + @AroundInvoke + public Object methodInterceptor(InvocationContext ctx) throws Exception { + + //noop + return ctx.proceed(); + } +} diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/cdi/PingInterceptorBinding.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/cdi/PingInterceptorBinding.java new file mode 100755 index 00000000..240b7b2c --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/cdi/PingInterceptorBinding.java @@ -0,0 +1,33 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.prims.cdi; + +import java.lang.annotation.ElementType; +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; +import java.lang.annotation.Target; + +import javax.interceptor.InterceptorBinding; + +/** + * + */ +@InterceptorBinding +@Target({ ElementType.TYPE, ElementType.CONSTRUCTOR }) +@Retention(RetentionPolicy.RUNTIME) +public @interface PingInterceptorBinding { + +} diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/cdi/PingServletCDI.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/cdi/PingServletCDI.java new file mode 100755 index 00000000..9696465a --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/cdi/PingServletCDI.java @@ -0,0 +1,70 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.prims.cdi; + +import java.io.IOException; +import java.io.PrintWriter; + +import javax.ejb.EJB; +import javax.inject.Inject; +import javax.servlet.ServletConfig; +import javax.servlet.ServletException; +import javax.servlet.annotation.WebServlet; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +@WebServlet("/servlet/PingServletCDI") +public class PingServletCDI extends HttpServlet { + + private static final long serialVersionUID = -1803544618879689949L; + private static String initTime; + + @Inject + PingCDIBean cdiBean; + + @EJB + PingEJBIFace ejb; + + @Override + protected void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException { + + PrintWriter pw = response.getWriter(); + pw.write("Ping Servlet CDI" + + "

    Ping Servlet CDI
    Init time : " + initTime + + "

    "); + + pw.write("hitCount: " + cdiBean.hello() + "
    "); + pw.write("hitCount: " + ejb.getMsg() + "
    "); + + pw.flush(); + pw.close(); + + } + + /** + * called when the class is loaded to initialize the servlet + * + * @param config + * ServletConfig: + **/ + @Override + public void init(ServletConfig config) throws ServletException { + super.init(config); + initTime = new java.util.Date().toString(); + + } +} diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/cdi/PingServletCDIBeanManagerViaCDICurrent.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/cdi/PingServletCDIBeanManagerViaCDICurrent.java new file mode 100644 index 00000000..b4292e9e --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/cdi/PingServletCDIBeanManagerViaCDICurrent.java @@ -0,0 +1,71 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.prims.cdi; + +import java.io.IOException; +import java.io.PrintWriter; + +import javax.inject.Inject; +import javax.servlet.ServletConfig; +import javax.servlet.ServletException; +import javax.servlet.annotation.WebServlet; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +@WebServlet("/servlet/PingServletCDIBeanManagerViaCDICurrent") +public class PingServletCDIBeanManagerViaCDICurrent extends HttpServlet { + + private static final long serialVersionUID = -1803544618879689949L; + private static String initTime; + + @Inject + PingCDIBean cdiBean; + + + + @Override + protected void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException { + + PrintWriter pw = response.getWriter(); + pw.write("Ping Servlet CDI Bean Manager" + + "

    Ping Servlet CDI Bean Manager
    Init time : " + initTime + + "

    "); + + try { + pw.write("hitCount: " + cdiBean.getBeanMangerViaCDICurrent() + ""); + } catch (Exception e) { + e.printStackTrace(); + } + + pw.flush(); + pw.close(); + + } + + /** + * called when the class is loaded to initialize the servlet + * + * @param config + * ServletConfig: + **/ + @Override + public void init(ServletConfig config) throws ServletException { + super.init(config); + initTime = new java.util.Date().toString(); + + } +} diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/cdi/PingServletCDIBeanManagerViaJNDI.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/cdi/PingServletCDIBeanManagerViaJNDI.java new file mode 100755 index 00000000..5ce3d914 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/cdi/PingServletCDIBeanManagerViaJNDI.java @@ -0,0 +1,71 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.prims.cdi; + +import java.io.IOException; +import java.io.PrintWriter; + +import javax.inject.Inject; +import javax.servlet.ServletConfig; +import javax.servlet.ServletException; +import javax.servlet.annotation.WebServlet; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +@WebServlet("/servlet/PingServletCDIBeanManagerViaJNDI") +public class PingServletCDIBeanManagerViaJNDI extends HttpServlet { + + private static final long serialVersionUID = -1803544618879689949L; + private static String initTime; + + @Inject + PingCDIBean cdiBean; + + + + @Override + protected void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException { + + PrintWriter pw = response.getWriter(); + pw.write("Ping Servlet CDI Bean Manager" + + "

    Ping Servlet CDI Bean Manager
    Init time : " + initTime + + "

    "); + + try { + pw.write("hitCount: " + cdiBean.getBeanMangerViaJNDI() + ""); + } catch (Exception e) { + e.printStackTrace(); + } + + pw.flush(); + pw.close(); + + } + + /** + * called when the class is loaded to initialize the servlet + * + * @param config + * ServletConfig: + **/ + @Override + public void init(ServletConfig config) throws ServletException { + super.init(config); + initTime = new java.util.Date().toString(); + + } +} diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/cdi/PingServletCDIEvent.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/cdi/PingServletCDIEvent.java new file mode 100644 index 00000000..9838dc33 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/cdi/PingServletCDIEvent.java @@ -0,0 +1,80 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.prims.cdi; + +import java.io.IOException; +import java.io.PrintWriter; + +import javax.enterprise.event.Observes; +import javax.inject.Inject; + +import javax.servlet.ServletConfig; +import javax.servlet.ServletException; +import javax.servlet.annotation.WebServlet; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + + +@WebServlet("/servlet/PingServletCDIEvent") +public class PingServletCDIEvent extends HttpServlet { + + private static final long serialVersionUID = -1803544618879689949L; + private static String initTime; + private static int hitCount; + + @Inject + CDIEventProducer cdiEventProducer; + + @Override + protected void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException { + + cdiEventProducer.produceSyncEvent(); + + PrintWriter pw = response.getWriter(); + pw.write("Ping Servlet CDI Event" + + "

    Ping Servlet CDI Event
    Init time : " + initTime + + "

    "); + + try { + pw.write("hitCount1: " + hitCount + ""); + } catch (Exception e) { + e.printStackTrace(); + } + + pw.flush(); + pw.close(); + } + + /** + * called when the class is loaded to initialize the servlet + * + * @param config + * ServletConfig: + **/ + @Override + public void init(ServletConfig config) throws ServletException { + super.init(config); + initTime = new java.util.Date().toString(); + hitCount = 0; + + } + + public void onEvent(@Observes @Hit String event) { + hitCount++; + } +} + diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/cdi/PingServletCDIEventAsync.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/cdi/PingServletCDIEventAsync.java new file mode 100644 index 00000000..4a1b8b06 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/cdi/PingServletCDIEventAsync.java @@ -0,0 +1,90 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.prims.cdi; + +import java.io.IOException; +import java.io.PrintWriter; + +import javax.annotation.Priority; +import javax.enterprise.event.ObservesAsync; +import javax.inject.Inject; +import javax.interceptor.Interceptor; +import javax.servlet.ServletConfig; +import javax.servlet.ServletException; +import javax.servlet.annotation.WebServlet; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import com.ibm.websphere.samples.daytrader.util.Log; + +@WebServlet("/servlet/PingServletCDIEventAsync") +public class PingServletCDIEventAsync extends HttpServlet { + + private static final long serialVersionUID = -1803544618879689949L; + private static String initTime; + private static int hitCount1; + private static int hitCount2; + + @Inject + CDIEventProducer cdiEventProducer; + + @Override + protected void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException { + + cdiEventProducer.produceAsyncEvent(); + + PrintWriter pw = response.getWriter(); + pw.write("Ping Servlet CDI Event Async" + + "

    Ping Servlet CDI Event Async
    Init time : " + initTime + + "

    "); + + try { + pw.write("hitCount1: " + hitCount1 + "
    hitCount2: " + hitCount2 + ""); + } catch (Exception e) { + e.printStackTrace(); + } + + pw.flush(); + pw.close(); + } + + /** + * called when the class is loaded to initialize the servlet + * + * @param config + * ServletConfig: + **/ + @Override + public void init(ServletConfig config) throws ServletException { + super.init(config); + initTime = new java.util.Date().toString(); + hitCount1 = 0; + hitCount2 = 0; + } + + public void onAsyncEvent1(@ObservesAsync @Priority(Interceptor.Priority.APPLICATION) @HitAsync String event) { + hitCount1++; + } + + public void onAsyncEvent2(@ObservesAsync @Priority(Interceptor.Priority.APPLICATION + 1) @HitAsync String event) { + if (hitCount1 <= hitCount2 ) { + Log.error("Priority Error");; + } + hitCount2++; + } +} + diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/drive/PingServletDrive.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/drive/PingServletDrive.java new file mode 100644 index 00000000..5420b38e --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/drive/PingServletDrive.java @@ -0,0 +1,112 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.prims.drive; + +import java.io.IOException; + +import javax.servlet.ServletConfig; +import javax.servlet.ServletException; +import javax.servlet.ServletOutputStream; +import javax.servlet.annotation.WebServlet; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import com.ibm.websphere.samples.daytrader.util.Log; + +/** + * + * PingServlet tests fundamental dynamic HTML creation functionality through + * server side servlet processing. + * + */ + +@WebServlet(name = "PingServletDrive", urlPatterns = { "/drive/PingServlet" }) +public class PingServletDrive extends HttpServlet { + + private static final long serialVersionUID = 7097023236709683760L; + private static String initTime; + private static int hitCount; + + /** + * forwards post requests to the doGet method Creation date: (11/6/2000 + * 10:52:39 AM) + * + * @param res + * javax.servlet.http.HttpServletRequest + * @param res2 + * javax.servlet.http.HttpServletResponse + */ + @Override + public void doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { + doGet(req, res); + } + + /** + * this is the main method of the servlet that will service all get + * requests. + * + * @param request + * HttpServletRequest + * @param responce + * HttpServletResponce + **/ + @Override + public void doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { + try { + res.setContentType("text/html"); + + // The following 2 lines are the difference between PingServlet and + // PingServletWriter + // the latter uses a PrintWriter for output versus a binary output + // stream. + ServletOutputStream out = res.getOutputStream(); + // java.io.PrintWriter out = res.getWriter(); + hitCount++; + out.println("Ping Servlet" + + "

    Ping Servlet
    Init time : " + initTime + + "

    Hit Count: " + hitCount + ""); + } catch (Exception e) { + Log.error(e, "PingServlet.doGet(...): general exception caught"); + res.sendError(500, e.toString()); + + } + } + + /** + * returns a string of information about the servlet + * + * @return info String: contains info about the servlet + **/ + @Override + public String getServletInfo() { + return "Basic dynamic HTML generation through a servlet"; + } + + /** + * called when the class is loaded to initialize the servlet + * + * @param config + * ServletConfig: + **/ + @Override + public void init(ServletConfig config) throws ServletException { + super.init(config); + initTime = new java.util.Date().toString(); + hitCount = 0; + + } +} \ No newline at end of file diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/ejb3/PingServlet2Entity.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/ejb3/PingServlet2Entity.java new file mode 100644 index 00000000..79dfc3d8 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/ejb3/PingServlet2Entity.java @@ -0,0 +1,114 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.prims.ejb3; + +import java.io.IOException; + +import javax.persistence.EntityManager; +import javax.persistence.PersistenceContext; +import javax.servlet.ServletConfig; +import javax.servlet.ServletException; +import javax.servlet.annotation.WebServlet; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import com.ibm.websphere.samples.daytrader.entities.QuoteDataBean; +import com.ibm.websphere.samples.daytrader.util.Log; +import com.ibm.websphere.samples.daytrader.util.TradeConfig; + +/** + * + * Primitive designed to run within the TradeApplication and makes use of + * {@link trade_client.TradeConfig} for config parameters and random stock + * symbols. Servlet will generate a random stock symbol and get the price of + * that symbol using a {@link trade.Quote} Entity EJB This tests the common path + * of a Servlet calling an Entity EJB to get data + * + */ + +@WebServlet(name = "ejb3.PingServlet2Entity", urlPatterns = { "/ejb3/PingServlet2Entity" }) +public class PingServlet2Entity extends HttpServlet { + private static final long serialVersionUID = -9004026114063894842L; + + private static String initTime; + + private static int hitCount; + + @PersistenceContext(unitName = "daytrader") + private EntityManager em; + + @Override + public void doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { + doGet(req, res); + } + + @Override + public void doGet(HttpServletRequest req, HttpServletResponse res) throws IOException, ServletException { + + res.setContentType("text/html"); + java.io.PrintWriter out = res.getWriter(); + + QuoteDataBean quote = null; + String symbol = null; + + StringBuffer output = new StringBuffer(100); + output.append("Servlet2Entity" + "
    PingServlet2Entity
    " + + "
    PingServlet2Entity accesses an EntityManager" + + " using a PersistenceContext annotaion and then gets the price of a random symbol (generated by TradeConfig)" + + " through the EntityManager find method"); + try { + // generate random symbol + try { + int iter = TradeConfig.getPrimIterations(); + for (int ii = 0; ii < iter; ii++) { + // get a random symbol to look up and get the key to that + // symbol. + symbol = TradeConfig.rndSymbol(); + // find the EntityInstance. + quote = em.find(QuoteDataBean.class, symbol); + } + } catch (Exception e) { + Log.error("web_primtv.PingServlet2Entity.doGet(...): error performing find"); + throw e; + } + // get the price and print the output. + + output.append("
    initTime: " + initTime + "
    Hit Count: ").append(hitCount++); + output.append("
    Quote Information

    " + quote.toHTML()); + output.append("

    "); + out.println(output.toString()); + } catch (Exception e) { + Log.error(e, "PingServlet2Entity.doGet(...): error"); + // this will send an Error to teh web applications defined error + // page. + res.sendError(500, "PingServlet2Entity.doGet(...): error" + e.toString()); + + } + } + + @Override + public String getServletInfo() { + return "web primitive, tests Servlet to Entity EJB path"; + } + + @Override + public void init(ServletConfig config) throws ServletException { + super.init(config); + hitCount = 0; + initTime = new java.util.Date().toString(); + } +} \ No newline at end of file diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/ejb3/PingServlet2MDBQueue.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/ejb3/PingServlet2MDBQueue.java new file mode 100644 index 00000000..c1941f86 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/ejb3/PingServlet2MDBQueue.java @@ -0,0 +1,147 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.prims.ejb3; + +import java.io.IOException; + +import javax.annotation.Resource; +import javax.jms.Connection; +import javax.jms.ConnectionFactory; +import javax.jms.JMSContext; +import javax.jms.Queue; +import javax.jms.TextMessage; +import javax.servlet.ServletConfig; +import javax.servlet.ServletException; +import javax.servlet.annotation.WebServlet; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import com.ibm.websphere.samples.daytrader.util.Log; +import com.ibm.websphere.samples.daytrader.util.TradeConfig; + +/** + * This primitive is designed to run inside the TradeApplication and relies upon + * the {@link com.ibm.websphere.samples.daytrader.util.TradeConfig} class to set + * configuration parameters. PingServlet2MDBQueue tests key functionality of a + * servlet call to a post a message to an MDB Queue. The TradeBrokerMDB receives + * the message This servlet makes use of the MDB EJB + * {@link com.ibm.websphere.samples.daytrader.ejb3.DTBroker3MDB} by posting a + * message to the MDB Queue + */ +@WebServlet(name = "ejb3.PingServlet2MDBQueue", urlPatterns = { "/ejb3/PingServlet2MDBQueue" }) +public class PingServlet2MDBQueue extends HttpServlet { + + private static final long serialVersionUID = 2637271552188745216L; + + private static String initTime; + + private static int hitCount; + + @Resource(name = "jms/QueueConnectionFactory", authenticationType = javax.annotation.Resource.AuthenticationType.APPLICATION) + private ConnectionFactory queueConnectionFactory; + + // TODO: Glassfish does not like this - change to lookup? + @Resource(name = "jms/TradeBrokerQueue") + private Queue tradeBrokerQueue; + + @Override + public void doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { + doGet(req, res); + } + + @Override + public void doGet(HttpServletRequest req, HttpServletResponse res) throws IOException, ServletException { + + res.setContentType("text/html"); + java.io.PrintWriter out = res.getWriter(); + // use a stringbuffer to avoid concatenation of Strings + StringBuffer output = new StringBuffer(100); + output.append("PingServlet2MDBQueue" + + "
    PingServlet2MDBQueue
    " + "" + + "Tests the basic operation of a servlet posting a message to an EJB MDB through a JMS Queue.
    " + + "Note: Not intended for performance testing."); + + try { + Connection conn = queueConnectionFactory.createConnection(); + + try { + TextMessage message = null; + int iter = TradeConfig.getPrimIterations(); + for (int ii = 0; ii < iter; ii++) { + /*Session sess = conn.createSession(false, Session.AUTO_ACKNOWLEDGE); + try { + MessageProducer producer = sess.createProducer(tradeBrokerQueue); + + message = sess.createTextMessage(); + + String command = "ping"; + message.setStringProperty("command", command); + message.setLongProperty("publishTime", System.currentTimeMillis()); + message.setText("Ping message for queue java:comp/env/jms/TradeBrokerQueue sent from PingServlet2MDBQueue at " + new java.util.Date()); + producer.send(message); + } finally { + sess.close(); + }*/ + + JMSContext context = queueConnectionFactory.createContext(); + + message = context.createTextMessage(); + + message.setStringProperty("command", "ping"); + message.setLongProperty("publishTime", System.currentTimeMillis()); + message.setText("Ping message for queue java:comp/env/jms/TradeBrokerQueue sent from PingServlet2MDBQueue at " + new java.util.Date()); + + context.createProducer().send(tradeBrokerQueue, message); + } + + // write out the output + output.append("
    initTime: ").append(initTime); + output.append("
    Hit Count: ").append(hitCount++); + output.append("
    Posted Text message to java:comp/env/jms/TradeBrokerQueue destination"); + output.append("
    Message: ").append(message); + output.append("

    Message text: ").append(message.getText()); + output.append("

    "); + out.println(output.toString()); + + } catch (Exception e) { + Log.error("PingServlet2MDBQueue.doGet(...):exception posting message to TradeBrokerQueue destination "); + throw e; + } finally { + conn.close(); + } + } // this is where I actually handle the exceptions + catch (Exception e) { + Log.error(e, "PingServlet2MDBQueue.doGet(...): error"); + res.sendError(500, "PingServlet2MDBQueue.doGet(...): error, " + e.toString()); + + } + } + + @Override + public String getServletInfo() { + return "web primitive, configured with trade runtime configs, tests Servlet to Session EJB path"; + + } + + @Override + public void init(ServletConfig config) throws ServletException { + super.init(config); + hitCount = 0; + initTime = new java.util.Date().toString(); + } + +} diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/ejb3/PingServlet2MDBTopic.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/ejb3/PingServlet2MDBTopic.java new file mode 100644 index 00000000..722cab74 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/ejb3/PingServlet2MDBTopic.java @@ -0,0 +1,148 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.prims.ejb3; + +import java.io.IOException; + +import javax.annotation.Resource; +import javax.jms.Connection; +import javax.jms.ConnectionFactory; +import javax.jms.JMSContext; +import javax.jms.TextMessage; +import javax.jms.Topic; +import javax.servlet.ServletConfig; +import javax.servlet.ServletException; +import javax.servlet.annotation.WebServlet; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import com.ibm.websphere.samples.daytrader.util.Log; +import com.ibm.websphere.samples.daytrader.util.TradeConfig; + +/** + * This primitive is designed to run inside the TradeApplication and relies upon + * the {@link com.ibm.websphere.samples.daytrader.util.TradeConfig} class to set + * configuration parameters. PingServlet2MDBQueue tests key functionality of a + * servlet call to a post a message to an MDB Topic. The TradeStreamerMDB (and + * any other subscribers) receives the message This servlet makes use of the MDB + * EJB {@link com.ibm.websphere.samples.daytrader.ejb3.DTStreamer3MDB} by + * posting a message to the MDB Topic + */ +@WebServlet(name = "ejb3.PingServlet2MDBTopic", urlPatterns = { "/ejb3/PingServlet2MDBTopic" }) +public class PingServlet2MDBTopic extends HttpServlet { + + private static final long serialVersionUID = 5925470158886928225L; + + private static String initTime; + + private static int hitCount; + + @Resource(name = "jms/TopicConnectionFactory", authenticationType = javax.annotation.Resource.AuthenticationType.APPLICATION) + private ConnectionFactory topicConnectionFactory; + + // TODO: Glassfish does not like this - change to lookup? + @Resource(name = "jms/TradeStreamerTopic") + private Topic tradeStreamerTopic; + + @Override + public void doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { + doGet(req, res); + } + + @Override + public void doGet(HttpServletRequest req, HttpServletResponse res) throws IOException, ServletException { + + res.setContentType("text/html"); + java.io.PrintWriter out = res.getWriter(); + // use a stringbuffer to avoid concatenation of Strings + StringBuffer output = new StringBuffer(100); + output.append("PingServlet2MDBTopic" + + "
    PingServlet2MDBTopic
    " + "" + + "Tests the basic operation of a servlet posting a message to an EJB MDB (and other subscribers) through a JMS Topic.
    " + + "Note: Not intended for performance testing."); + + // we only want to look up the JMS resources once + try { + + Connection conn = topicConnectionFactory.createConnection(); + + try { + TextMessage message = null; + int iter = TradeConfig.getPrimIterations(); + for (int ii = 0; ii < iter; ii++) { + /*Session sess = conn.createSession(false, Session.AUTO_ACKNOWLEDGE); + try { + MessageProducer producer = sess.createProducer(tradeStreamerTopic); + message = sess.createTextMessage(); + + String command = "ping"; + message.setStringProperty("command", command); + message.setLongProperty("publishTime", System.currentTimeMillis()); + message.setText("Ping message for topic java:comp/env/jms/TradeStreamerTopic sent from PingServlet2MDBTopic at " + new java.util.Date()); + + producer.send(message); + } finally { + sess.close(); + }*/ + + JMSContext context = topicConnectionFactory.createContext(); + + message = context.createTextMessage(); + + message.setStringProperty("command", "ping"); + message.setLongProperty("publishTime", System.currentTimeMillis()); + message.setText("Ping message for topic java:comp/env/jms/TradeStreamerTopic sent from PingServlet2MDBTopic at " + new java.util.Date()); + + context.createProducer().send(tradeStreamerTopic, message); + } + + // write out the output + output.append("
    initTime: ").append(initTime); + output.append("
    Hit Count: ").append(hitCount++); + output.append("
    Posted Text message to java:comp/env/jms/TradeStreamerTopic topic"); + output.append("
    Message: ").append(message); + output.append("

    Message text: ").append(message.getText()); + output.append("

    "); + out.println(output.toString()); + + } catch (Exception e) { + Log.error("PingServlet2MDBTopic.doGet(...):exception posting message to TradeStreamerTopic topic"); + throw e; + } finally { + conn.close(); + } + } // this is where I actually handle the exceptions + catch (Exception e) { + Log.error(e, "PingServlet2MDBTopic.doGet(...): error"); + res.sendError(500, "PingServlet2MDBTopic.doGet(...): error, " + e.toString()); + + } + } + + @Override + public String getServletInfo() { + return "web primitive, configured with trade runtime configs, tests Servlet to Session EJB path"; + } + + @Override + public void init(ServletConfig config) throws ServletException { + super.init(config); + hitCount = 0; + initTime = new java.util.Date().toString(); + } + +} diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/ejb3/PingServlet2Session.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/ejb3/PingServlet2Session.java new file mode 100644 index 00000000..4b9b159e --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/ejb3/PingServlet2Session.java @@ -0,0 +1,121 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.prims.ejb3; + +import java.io.IOException; + +import javax.annotation.PostConstruct; +import javax.inject.Inject; +import javax.servlet.ServletConfig; +import javax.servlet.ServletException; +import javax.servlet.annotation.WebServlet; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import com.ibm.websphere.samples.daytrader.impl.ejb3.TradeSLSBBean; +import com.ibm.websphere.samples.daytrader.interfaces.TradeEJB; +import com.ibm.websphere.samples.daytrader.interfaces.TradeServices; +import com.ibm.websphere.samples.daytrader.util.Log; +import com.ibm.websphere.samples.daytrader.util.TradeConfig; + +/** + * + * This primitive is designed to run inside the TradeApplication and relies upon + * the {@link trade_client.TradeConfig} class to set configuration parameters. + * PingServlet2SessionEJB tests key functionality of a servlet call to a + * stateless SessionEJB. This servlet makes use of the Stateless Session EJB + * {@link trade.Trade} by calling calculateInvestmentReturn with three random + * numbers. + * + */ +@WebServlet(name = "ejb3.PingServlet2Session", urlPatterns = { "/ejb3/PingServlet2Session" }) +public class PingServlet2Session extends HttpServlet { + + private static final long serialVersionUID = 6854998080392777053L; + + private static String initTime; + + private static int hitCount; + + @Inject + @TradeEJB + private TradeServices tradeSLSBLocal; + + + @Override + public void doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { + doGet(req, res); + } + + @Override + public void doGet(HttpServletRequest req, HttpServletResponse res) throws IOException, ServletException { + + res.setContentType("text/html"); + java.io.PrintWriter out = res.getWriter(); + // use a stringbuffer to avoid concatenation of Strings + StringBuffer output = new StringBuffer(100); + output.append("PingServlet2SessionLocal" + + "
    PingServlet2SessionLocal
    " + "" + + "Tests the basis path from a Servlet to a Session Bean."); + + try { + + try { + // create three random numbers + double rnd1 = Math.random() * 1000000; + double rnd2 = Math.random() * 1000000; + + // use a function to do some work. + double increase = 0.0; + int iter = TradeConfig.getPrimIterations(); + for (int ii = 0; ii < iter; ii++) { + increase = tradeSLSBLocal.investmentReturn(rnd1, rnd2); + } + + // write out the output + output.append("
    initTime: " + initTime); + output.append("
    Hit Count: " + hitCount++); + output.append("
    Investment Return Information

    investment: " + rnd1); + output.append("
    current Value: " + rnd2); + output.append("
    investment return " + increase + "
    "); + out.println(output.toString()); + + } catch (Exception e) { + Log.error("PingServlet2Session.doGet(...):exception calling trade.investmentReturn "); + throw e; + } + } // this is where I actually handle the exceptions + catch (Exception e) { + Log.error(e, "PingServlet2Session.doGet(...): error"); + res.sendError(500, "PingServlet2Session.doGet(...): error, " + e.toString()); + + } + } + + @Override + public String getServletInfo() { + return "web primitive, configured with trade runtime configs, tests Servlet to Session EJB path"; + + } + + @Override + public void init(ServletConfig config) throws ServletException { + super.init(config); + hitCount = 0; + initTime = new java.util.Date().toString(); + } +} \ No newline at end of file diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/ejb3/PingServlet2Session2CMROne2Many.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/ejb3/PingServlet2Session2CMROne2Many.java new file mode 100644 index 00000000..cfcda22b --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/ejb3/PingServlet2Session2CMROne2Many.java @@ -0,0 +1,114 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.prims.ejb3; + +import java.io.IOException; +import java.util.Collection; +import java.util.Iterator; + +import javax.inject.Inject; +import javax.servlet.ServletConfig; +import javax.servlet.ServletException; +import javax.servlet.annotation.WebServlet; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import com.ibm.websphere.samples.daytrader.entities.OrderDataBean; +import com.ibm.websphere.samples.daytrader.interfaces.TradeEJB; +import com.ibm.websphere.samples.daytrader.interfaces.TradeServices; +import com.ibm.websphere.samples.daytrader.util.Log; +import com.ibm.websphere.samples.daytrader.util.TradeConfig; + +/** + * Primitive to test Entity Container Managed Relationshiop One to One Servlet + * will generate a random userID and get the profile for that user using a + * {@link trade.Account} Entity EJB This tests the common path of a Servlet + * calling a Session to Entity EJB to get CMR One to One data + * + */ +@WebServlet(name = "ejb3.PingServlet2Session2CMR2One2Many", urlPatterns = { "/ejb3/PingServlet2Session2CMROne2Many" }) +public class PingServlet2Session2CMROne2Many extends HttpServlet { + private static final long serialVersionUID = -8658929449987440032L; + + private static String initTime; + + private static int hitCount; + + @Inject + @TradeEJB + private TradeServices tradeSLSBLocal; + + @Override + public void doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { + doGet(req, res); + } + + @Override + public void doGet(HttpServletRequest req, HttpServletResponse res) throws IOException, ServletException { + + res.setContentType("text/html"); + java.io.PrintWriter out = res.getWriter(); + + String userID = null; + + StringBuffer output = new StringBuffer(100); + output.append("Servlet2Session2CMROne20ne" + + "
    PingServlet2Session2CMROne2Many
    " + + "
    PingServlet2Session2CMROne2Many uses the Trade Session EJB" + + " to get the orders for a user using an EJB 3.0 Entity CMR one to many relationship"); + try { + + Collection orderDataBeans = null; + int iter = TradeConfig.getPrimIterations(); + for (int ii = 0; ii < iter; ii++) { + userID = TradeConfig.rndUserID(); + + // get the users orders and print the output. + orderDataBeans = tradeSLSBLocal.getOrders(userID); + } + + output.append("
    initTime: " + initTime + "
    Hit Count: ").append(hitCount++); + output.append("
    One to Many CMR access of Account Orders from Account Entity
    "); + output.append("
    User: " + userID + " currently has " + orderDataBeans.size() + " stock orders:"); + Iterator it = orderDataBeans.iterator(); + while (it.hasNext()) { + OrderDataBean orderData = (OrderDataBean) it.next(); + output.append("
    " + orderData.toHTML()); + } + output.append("

    "); + out.println(output.toString()); + } catch (Exception e) { + Log.error(e, "PingServlet2Session2CMROne2Many.doGet(...): error"); + // this will send an Error to teh web applications defined error + // page. + res.sendError(500, "PingServlet2Session2CMROne2Many.doGet(...): error" + e.toString()); + + } + } + + @Override + public String getServletInfo() { + return "web primitive, tests Servlet to Entity EJB path"; + } + + @Override + public void init(ServletConfig config) throws ServletException { + super.init(config); + hitCount = 0; + initTime = new java.util.Date().toString(); + } +} \ No newline at end of file diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/ejb3/PingServlet2Session2CMROne2One.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/ejb3/PingServlet2Session2CMROne2One.java new file mode 100644 index 00000000..21801863 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/ejb3/PingServlet2Session2CMROne2One.java @@ -0,0 +1,107 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.prims.ejb3; + +import java.io.IOException; + +import javax.ejb.EJB; +import javax.inject.Inject; +import javax.servlet.ServletConfig; +import javax.servlet.ServletException; +import javax.servlet.annotation.WebServlet; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import com.ibm.websphere.samples.daytrader.entities.AccountProfileDataBean; +import com.ibm.websphere.samples.daytrader.impl.ejb3.TradeSLSBBean; +import com.ibm.websphere.samples.daytrader.interfaces.TradeEJB; +import com.ibm.websphere.samples.daytrader.interfaces.TradeServices; +import com.ibm.websphere.samples.daytrader.util.Log; +import com.ibm.websphere.samples.daytrader.util.TradeConfig; + +/** + * Primitive to test Entity Container Managed Relationshiop One to One Servlet + * will generate a random userID and get the profile for that user using a + * {@link trade.Account} Entity EJB This tests the common path of a Servlet + * calling a Session to Entity EJB to get CMR One to One data + * + */ +@WebServlet(name = "ejb3.PingServlet2Session2CMR2One2One", urlPatterns = { "/ejb3/PingServlet2Session2CMROne2One" }) +public class PingServlet2Session2CMROne2One extends HttpServlet { + private static final long serialVersionUID = 567062418489199248L; + + private static String initTime; + + private static int hitCount; + + @Inject + @TradeEJB + private TradeServices tradeSLSBLocal; + + @Override + public void doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { + doGet(req, res); + } + + @Override + public void doGet(HttpServletRequest req, HttpServletResponse res) throws IOException, ServletException { + + res.setContentType("text/html"); + java.io.PrintWriter out = res.getWriter(); + + String userID = null; + + StringBuffer output = new StringBuffer(100); + output.append("Servlet2Session2CMROne20ne" + + "
    PingServlet2Session2CMROne2One
    " + + "
    PingServlet2Session2CMROne2One uses the Trade Session EJB" + + " to get the profile for a user using an EJB 3.0 CMR one to one relationship"); + try { + + AccountProfileDataBean accountProfileData = null; + int iter = TradeConfig.getPrimIterations(); + for (int ii = 0; ii < iter; ii++) { + userID = TradeConfig.rndUserID(); + // get the price and print the output. + accountProfileData = tradeSLSBLocal.getAccountProfileData(userID); + } + + output.append("
    initTime: " + initTime + "
    Hit Count: ").append(hitCount++); + output.append("
    One to One CMR access of AccountProfile Information from Account Entity

    " + accountProfileData.toHTML()); + output.append("

    "); + out.println(output.toString()); + } catch (Exception e) { + Log.error(e, "PingServlet2Session2CMROne2One.doGet(...): error"); + // this will send an Error to teh web applications defined error + // page. + res.sendError(500, "PingServlet2Session2CMROne2One.doGet(...): error" + e.toString()); + + } + } + + @Override + public String getServletInfo() { + return "web primitive, tests Servlet to Entity EJB path"; + } + + @Override + public void init(ServletConfig config) throws ServletException { + super.init(config); + hitCount = 0; + initTime = new java.util.Date().toString(); + } +} \ No newline at end of file diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/ejb3/PingServlet2Session2Entity.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/ejb3/PingServlet2Session2Entity.java new file mode 100644 index 00000000..17e892cc --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/ejb3/PingServlet2Session2Entity.java @@ -0,0 +1,126 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.prims.ejb3; + +import java.io.IOException; + +import javax.ejb.EJB; +import javax.inject.Inject; +import javax.naming.InitialContext; +import javax.servlet.ServletConfig; +import javax.servlet.ServletException; +import javax.servlet.annotation.WebServlet; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import com.ibm.websphere.samples.daytrader.entities.QuoteDataBean; +import com.ibm.websphere.samples.daytrader.impl.ejb3.TradeSLSBBean; +import com.ibm.websphere.samples.daytrader.interfaces.TradeEJB; +import com.ibm.websphere.samples.daytrader.interfaces.TradeServices; +import com.ibm.websphere.samples.daytrader.util.Log; +import com.ibm.websphere.samples.daytrader.util.TradeConfig; + +/** + * + * PingServlet2Session2Entity tests key functionality of a servlet call to a + * stateless SessionEJB, and then to a Entity EJB representing data in a + * database. This servlet makes use of the Stateless Session EJB {@link Trade}, + * and then uses {@link TradeConfig} to generate a random stock symbol. The + * stocks price is looked up using the Quote Entity EJB. + * + */ +@WebServlet(name = "ejb3.PingServlet2Session2Entity", urlPatterns = { "/ejb3/PingServlet2Session2Entity" }) +public class PingServlet2Session2Entity extends HttpServlet { + + private static final long serialVersionUID = -5043457201022265012L; + + private static String initTime; + + private static int hitCount; + + @Inject + @TradeEJB + private TradeServices tradeSLSBLocal; + + @Override + public void doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { + doGet(req, res); + } + + @Override + public void doGet(HttpServletRequest req, HttpServletResponse res) throws IOException, ServletException { + + res.setContentType("text/html"); + java.io.PrintWriter out = res.getWriter(); + String symbol = null; + QuoteDataBean quoteData = null; + StringBuffer output = new StringBuffer(100); + + output.append("PingServlet2Session2Entity" + + "
    PingServlet2Session2Entity
    " + "" + + "PingServlet2Session2Entity tests the common path of a Servlet calling a Session EJB " + "which in turn calls an Entity EJB.
    "); + + try { + try { + int iter = TradeConfig.getPrimIterations(); + for (int ii = 0; ii < iter; ii++) { + symbol = TradeConfig.rndSymbol(); + // getQuote will call findQuote which will instaniate the + // Quote Entity Bean + // and then will return a QuoteObject + quoteData = tradeSLSBLocal.getQuote(symbol); + } + } catch (Exception ne) { + Log.error(ne, "PingServlet2Session2Entity.goGet(...): exception getting QuoteData through Trade"); + throw ne; + } + + output.append("
    initTime: " + initTime).append("
    Hit Count: " + hitCount++); + output.append("
    Quote Information

    " + quoteData.toHTML()); + out.println(output.toString()); + + } catch (Exception e) { + Log.error(e, "PingServlet2Session2Entity.doGet(...): General Exception caught"); + res.sendError(500, "General Exception caught, " + e.toString()); + } + } + + @Override + public String getServletInfo() { + return "web primitive, tests Servlet to Session to Entity EJB path"; + + } + + @Override + public void init(ServletConfig config) throws ServletException { + super.init(config); + hitCount = 0; + initTime = new java.util.Date().toString(); + + if (tradeSLSBLocal == null) { + Log.error("PingServlet2Session2Entity:init - Injection of tradeSLSBLocal failed - performing JNDI lookup!"); + + try { + InitialContext context = new InitialContext(); + tradeSLSBLocal = (TradeSLSBBean) context.lookup("java:comp/env/ejb/TradeSLSBBean"); + } catch (Exception ex) { + Log.error("PingServlet2Session2Entity:init - Lookup of tradeSLSBLocal failed!!!"); + ex.printStackTrace(); + } + } + } +} \ No newline at end of file diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/ejb3/PingServlet2Session2Entity2JSP.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/ejb3/PingServlet2Session2Entity2JSP.java new file mode 100644 index 00000000..e8f1c268 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/ejb3/PingServlet2Session2Entity2JSP.java @@ -0,0 +1,106 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.prims.ejb3; + +import java.io.IOException; + +import javax.ejb.EJB; +import javax.inject.Inject; +import javax.naming.InitialContext; +import javax.servlet.ServletConfig; +import javax.servlet.ServletContext; +import javax.servlet.ServletException; +import javax.servlet.annotation.WebServlet; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import com.ibm.websphere.samples.daytrader.entities.QuoteDataBean; +import com.ibm.websphere.samples.daytrader.impl.ejb3.TradeSLSBBean; +import com.ibm.websphere.samples.daytrader.interfaces.TradeEJB; +import com.ibm.websphere.samples.daytrader.interfaces.TradeServices; +import com.ibm.websphere.samples.daytrader.util.Log; +import com.ibm.websphere.samples.daytrader.util.TradeConfig; + +/** + * + * PingServlet2Session2Entity tests key functionality of a servlet call to a + * stateless SessionEJB, and then to a Entity EJB representing data in a + * database. This servlet makes use of the Stateless Session EJB {@link Trade}, + * and then uses {@link TradeConfig} to generate a random stock symbol. The + * stocks price is looked up using the Quote Entity EJB. + * + */ +@WebServlet(name = "ejb3.PingServlet2Session2Entity2JSP", urlPatterns = { "/ejb3/PingServlet2Session2Entity2JSP" }) +public class PingServlet2Session2Entity2JSP extends HttpServlet { + + private static final long serialVersionUID = -8966014710582651693L; + + @Inject + @TradeEJB + private TradeServices tradeSLSBLocal; + + @Override + public void doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { + doGet(req, res); + } + + @Override + public void doGet(HttpServletRequest req, HttpServletResponse res) throws IOException, ServletException { + String symbol = null; + QuoteDataBean quoteData = null; + ServletContext ctx = getServletConfig().getServletContext(); + + try { + try { + int iter = TradeConfig.getPrimIterations(); + for (int ii = 0; ii < iter; ii++) { + symbol = TradeConfig.rndSymbol(); + // getQuote will call findQuote which will instaniate the + // Quote Entity Bean + // and then will return a QuoteObject + quoteData = tradeSLSBLocal.getQuote(symbol); + } + + req.setAttribute("quoteData", quoteData); + // req.setAttribute("hitCount", hitCount); + // req.setAttribute("initTime", initTime); + + ctx.getRequestDispatcher("/quoteDataPrimitive.jsp").include(req, res); + } catch (Exception ne) { + Log.error(ne, "PingServlet2Session2Entity2JSP.goGet(...): exception getting QuoteData through Trade"); + throw ne; + } + + } catch (Exception e) { + Log.error(e, "PingServlet2Session2Entity2JSP.doGet(...): General Exception caught"); + res.sendError(500, "General Exception caught, " + e.toString()); + } + } + + @Override + public String getServletInfo() { + return "web primitive, tests Servlet to Session to Entity EJB to JSP path"; + + } + + @Override + public void init(ServletConfig config) throws ServletException { + super.init(config); + // hitCount = 0; + // initTime = new java.util.Date().toString(); + } +} \ No newline at end of file diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/ejb3/PingServlet2Session2EntityCollection.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/ejb3/PingServlet2Session2EntityCollection.java new file mode 100644 index 00000000..ded2e882 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/ejb3/PingServlet2Session2EntityCollection.java @@ -0,0 +1,123 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.prims.ejb3; + +import java.io.IOException; +import java.util.Collection; +import java.util.Iterator; + +import javax.ejb.EJB; +import javax.inject.Inject; +import javax.servlet.ServletConfig; +import javax.servlet.ServletException; +import javax.servlet.annotation.WebServlet; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import com.ibm.websphere.samples.daytrader.entities.HoldingDataBean; +import com.ibm.websphere.samples.daytrader.impl.ejb3.TradeSLSBBean; +import com.ibm.websphere.samples.daytrader.interfaces.TradeEJB; +import com.ibm.websphere.samples.daytrader.interfaces.TradeServices; +import com.ibm.websphere.samples.daytrader.util.Log; +import com.ibm.websphere.samples.daytrader.util.TradeConfig; + +/** + * + * PingServlet2Session2Entity tests key functionality of a servlet call to a + * stateless SessionEJB, and then to a Entity EJB representing data in a + * database. This servlet makes use of the Stateless Session EJB {@link Trade}, + * and then uses {@link TradeConfig} to generate a random user. The users + * portfolio is looked up using the Holding Entity EJB returnin a collection of + * Holdings + * + */ +@WebServlet(name = "ejb3.PingServlet2Session2EntityCollection", urlPatterns = { "/ejb3/PingServlet2Session2EntityCollection" }) +public class PingServlet2Session2EntityCollection extends HttpServlet { + + private static final long serialVersionUID = 6171380014749902308L; + + private static String initTime; + + private static int hitCount; + + @Inject + @TradeEJB + private TradeServices tradeSLSBLocal; + + @Override + public void doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { + doGet(req, res); + } + + @Override + public void doGet(HttpServletRequest req, HttpServletResponse res) throws IOException, ServletException { + + res.setContentType("text/html"); + java.io.PrintWriter out = res.getWriter(); + String userID = null; + Collection holdingDataBeans = null; + StringBuffer output = new StringBuffer(100); + + output.append("PingServlet2Session2EntityCollection" + + "
    PingServlet2Session2EntityCollection
    " + "" + + "PingServlet2Session2EntityCollection tests the common path of a Servlet calling a Session EJB " + + "which in turn calls a finder on an Entity EJB returning a collection of Entity EJBs.
    "); + + try { + + try { + int iter = TradeConfig.getPrimIterations(); + for (int ii = 0; ii < iter; ii++) { + userID = TradeConfig.rndUserID(); + // getQuote will call findQuote which will instaniate the + // Quote Entity Bean + // and then will return a QuoteObject + holdingDataBeans = tradeSLSBLocal.getHoldings(userID); + // trade.remove(); + } + } catch (Exception ne) { + Log.error(ne, "PingServlet2Session2EntityCollection.goGet(...): exception getting HoldingData collection through Trade for user " + userID); + throw ne; + } + + output.append("
    initTime: " + initTime).append("
    Hit Count: " + hitCount++); + output.append("
    User: " + userID + " is currently holding " + holdingDataBeans.size() + " stock holdings:"); + Iterator it = holdingDataBeans.iterator(); + while (it.hasNext()) { + HoldingDataBean holdingData = (HoldingDataBean) it.next(); + output.append("
    " + holdingData.toHTML()); + } + out.println(output.toString()); + + } catch (Exception e) { + Log.error(e, "PingServlet2Session2EntityCollection.doGet(...): General Exception caught"); + res.sendError(500, "General Exception caught, " + e.toString()); + } + } + + @Override + public String getServletInfo() { + return "web primitive, tests Servlet to Session to Entity returning a collection of Entity EJBs"; + } + + @Override + public void init(ServletConfig config) throws ServletException { + super.init(config); + hitCount = 0; + initTime = new java.util.Date().toString(); + } +} \ No newline at end of file diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/ejb3/PingServlet2TwoPhase.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/ejb3/PingServlet2TwoPhase.java new file mode 100644 index 00000000..3e184f06 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/ejb3/PingServlet2TwoPhase.java @@ -0,0 +1,118 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.prims.ejb3; + +import java.io.IOException; + +import javax.inject.Inject; +import javax.servlet.ServletConfig; +import javax.servlet.ServletException; +import javax.servlet.annotation.WebServlet; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import com.ibm.websphere.samples.daytrader.entities.QuoteDataBean; +import com.ibm.websphere.samples.daytrader.interfaces.TradeEJB; +import com.ibm.websphere.samples.daytrader.interfaces.TradeServices; +import com.ibm.websphere.samples.daytrader.util.Log; +import com.ibm.websphere.samples.daytrader.util.TradeConfig; + + +/** + * + * PingServlet2TwoPhase tests key functionality of a TwoPhase commit In this + * primitive a servlet calls a Session EJB which begins a global txn The Session + * EJB then reads a DB row and sends a message to JMS Queue The txn is closed w/ + * a 2-phase commit + * + */ +@WebServlet(name = "ejb3.PingServlet2TwoPhase", urlPatterns = { "/ejb3/PingServlet2TwoPhase" }) +public class PingServlet2TwoPhase extends HttpServlet { + + private static final long serialVersionUID = -1563251786527079548L; + + private static String initTime; + + private static int hitCount; + + @Inject + @TradeEJB + private TradeServices tradeSLSBLocal; + + @Override + public void doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { + doGet(req, res); + } + + + + @Override + public void doGet(HttpServletRequest req, HttpServletResponse res) throws IOException, ServletException { + + res.setContentType("text/html"); + java.io.PrintWriter out = res.getWriter(); + String symbol = null; + QuoteDataBean quoteData = null; + StringBuffer output = new StringBuffer(100); + + output.append("PingServlet2TwoPhase" + + "
    PingServlet2TwoPhase
    " + "" + + "PingServlet2TwoPhase tests the path of a Servlet calling a Session EJB " + + "which in turn calls an Entity EJB to read a DB row (quote). The Session EJB " + "then posts a message to a JMS Queue. " + + "
    These operations are wrapped in a 2-phase commit
    "); + + try { + + try { + int iter = TradeConfig.getPrimIterations(); + for (int ii = 0; ii < iter; ii++) { + symbol = TradeConfig.rndSymbol(); + // getQuote will call findQuote which will instaniate the + // Quote Entity Bean + // and then will return a QuoteObject + quoteData = tradeSLSBLocal.pingTwoPhase(symbol); + + } + } catch (Exception ne) { + Log.error(ne, "PingServlet2TwoPhase.goGet(...): exception getting QuoteData through Trade"); + throw ne; + } + + output.append("
    initTime: " + initTime).append("
    Hit Count: " + hitCount++); + output.append("
    Two phase ping selected a quote and sent a message to TradeBrokerQueue JMS queue
    Quote Information

    " + + quoteData.toHTML()); + out.println(output.toString()); + + } catch (Exception e) { + Log.error(e, "PingServlet2TwoPhase.doGet(...): General Exception caught"); + res.sendError(500, "General Exception caught, " + e.toString()); + } + } + + @Override + public String getServletInfo() { + return "web primitive, tests Servlet to Session to Entity EJB and JMS -- 2-phase commit path"; + + } + + @Override + public void init(ServletConfig config) throws ServletException { + super.init(config); + hitCount = 0; + initTime = new java.util.Date().toString(); + } +} \ No newline at end of file diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/http2/PingServletPush.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/http2/PingServletPush.java new file mode 100644 index 00000000..296a564a --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/http2/PingServletPush.java @@ -0,0 +1,73 @@ +/** + * (C) Copyright IBM Corporation 2019. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.prims.http2; + +import java.io.IOException; +import java.io.PrintWriter; + +// +import javax.servlet.ServletConfig; +import javax.servlet.ServletException; +import javax.servlet.annotation.WebServlet; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import javax.servlet.http.PushBuilder; + +import com.ibm.websphere.samples.daytrader.util.Log; + +@WebServlet(name = "PingServletPush", urlPatterns = { "/PingServletPush" }) +public class PingServletPush extends HttpServlet { + + private static final long serialVersionUID = -1687383294950455998L; + private static String initTime; + private static int hitCount; + + @Override + protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { + + try { + PushBuilder pushBuilder = req.newPushBuilder(); + if (pushBuilder != null) { + pushBuilder + .path("images/graph.gif") + .push(); + + } else { + Log.error("HTTP/2 not enabled or Push not supported"); + } + } catch (Exception e) { + e.printStackTrace(); + } + + try(PrintWriter respWriter = resp.getWriter();){ + hitCount++; + //System.out.println("Sending hit count: " + hitCount); + respWriter.write("Ping Servlet HTTP/2" + + "

    Ping Servlet HTTP/2
    Init time : " + initTime + + "

    Hit Count: " + hitCount + "
    " + + "" + + ""); + } + } + + @Override + public void init(ServletConfig config) throws ServletException { + super.init(config); + initTime = new java.util.Date().toString(); + hitCount = 0; + } +} diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/http2/PingServletSimple.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/http2/PingServletSimple.java new file mode 100644 index 00000000..5c9b7e69 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/http2/PingServletSimple.java @@ -0,0 +1,55 @@ +/** + * (C) Copyright IBM Corporation 2019. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.prims.http2; + +import java.io.IOException; +import java.io.PrintWriter; + +import javax.servlet.ServletConfig; +import javax.servlet.ServletException; +import javax.servlet.annotation.WebServlet; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +@WebServlet(name = "PingServletHttpSimple", urlPatterns = { "/PingServletHttpSimple" }) +public class PingServletSimple extends HttpServlet { + + private static final long serialVersionUID = -1687383294950455998L; + private static String initTime; + private static int hitCount; + + @Override + protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { + + try(PrintWriter respWriter = resp.getWriter();){ + hitCount++; + //System.out.println("Sending hit count: " + hitCount); + respWriter.write("Ping Servlet HTTP/2" + + "

    Ping Servlet HTTP/2
    Init time : " + initTime + + "

    Hit Count: " + hitCount + "
    " + + "" + + ""); + } + } + + @Override + public void init(ServletConfig config) throws ServletException { + super.init(config); + initTime = new java.util.Date().toString(); + hitCount = 0; + } +} diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/jaxrs/JAXRSSyncService.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/jaxrs/JAXRSSyncService.java new file mode 100644 index 00000000..aff1ea9b --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/jaxrs/JAXRSSyncService.java @@ -0,0 +1,63 @@ +/** + * (C) Copyright IBM Corporation 2019. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.prims.jaxrs; + +import javax.ws.rs.ApplicationPath; +import javax.ws.rs.Consumes; +import javax.ws.rs.GET; +import javax.ws.rs.POST; +import javax.ws.rs.Path; +import javax.ws.rs.Produces; +import javax.ws.rs.QueryParam; +import javax.ws.rs.core.MediaType; + +@ApplicationPath("/jaxrs") +@Path("sync") +public class JAXRSSyncService { + + /** + * note: this should be the basic code path for jaxrs process + * @param input + * @return + */ + @GET + @Path("echoText") + public String echoString(@QueryParam("input") String input) { + return input; + } + + /** + * note: this code path involves JSON marshaller & un-marshaller based on basic code path + * @param p Person Object + * @return Person Object + */ + @POST + @Path("echoJSON") + @Produces(value={MediaType.APPLICATION_JSON}) + @Consumes(value={MediaType.APPLICATION_JSON}) + public TestJSONObject echoObject(TestJSONObject jsonObject) { + return jsonObject; + } + + @POST + @Path("echoXML") + @Produces(value={MediaType.TEXT_XML,MediaType.APPLICATION_XML}) + @Consumes(value={MediaType.TEXT_XML,MediaType.APPLICATION_XML}) + public XMLObject echoObject(XMLObject xmlObject) { + return xmlObject; + } +} + diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/jaxrs/ObjectFactory.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/jaxrs/ObjectFactory.java new file mode 100644 index 00000000..f7993d8c --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/jaxrs/ObjectFactory.java @@ -0,0 +1,28 @@ +/** + * (C) Copyright IBM Corporation 2019. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.prims.jaxrs; + +import javax.xml.bind.annotation.XmlRegistry; + + +@XmlRegistry +public class ObjectFactory { + + public XMLObject createXMLObject() { + XMLObject xo = new XMLObject(); + return xo; + } +} diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/jaxrs/TestJSONObject.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/jaxrs/TestJSONObject.java new file mode 100644 index 00000000..20c229d1 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/jaxrs/TestJSONObject.java @@ -0,0 +1,134 @@ +/** + * (C) Copyright IBM Corporation 2019. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.prims.jaxrs; + +public class TestJSONObject { + + private String prop0001; + private String prop0002; + private String prop0003; + private String prop0004; + private String prop0005; + private String prop0006; + private String prop0007; + private String prop0008; + private String prop0009; + private String prop0010; + private String prop0011; + private String prop0012; + private String prop0013; + private String prop0014; + private String prop0015; + private String prop0016; + + public String getProp0001() { + return prop0001; + } + public void setProp0001(String prop0001) { + this.prop0001 = prop0001; + } + public String getProp0002() { + return prop0002; + } + public void setProp0002(String prop0002) { + this.prop0002 = prop0002; + } + public String getProp0003() { + return prop0003; + } + public void setProp0003(String prop0003) { + this.prop0003 = prop0003; + } + public String getProp0004() { + return prop0004; + } + public void setProp0004(String prop0004) { + this.prop0004 = prop0004; + } + public String getProp0005() { + return prop0005; + } + public void setProp0005(String prop0005) { + this.prop0005 = prop0005; + } + public String getProp0006() { + return prop0006; + } + public void setProp0006(String prop0006) { + this.prop0006 = prop0006; + } + public String getProp0007() { + return prop0007; + } + public void setProp0007(String prop0007) { + this.prop0007 = prop0007; + } + public String getProp0008() { + return prop0008; + } + public void setProp0008(String prop0008) { + this.prop0008 = prop0008; + } + public String getProp0009() { + return prop0009; + } + public void setProp0009(String prop0009) { + this.prop0009 = prop0009; + } + public String getProp0010() { + return prop0010; + } + public void setProp0010(String prop0010) { + this.prop0010 = prop0010; + } + public String getProp0011() { + return prop0011; + } + public void setProp0011(String prop0011) { + this.prop0011 = prop0011; + } + public String getProp0012() { + return prop0012; + } + public void setProp0012(String prop0012) { + this.prop0012 = prop0012; + } + public String getProp0013() { + return prop0013; + } + public void setProp0013(String prop0013) { + this.prop0013 = prop0013; + } + public String getProp0014() { + return prop0014; + } + public void setProp0014(String prop0014) { + this.prop0014 = prop0014; + } + public String getProp0015() { + return prop0015; + } + public void setProp0015(String prop0015) { + this.prop0015 = prop0015; + } + public String getProp0016() { + return prop0016; + } + public void setProp0016(String prop0016) { + this.prop0016 = prop0016; + } +} + diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/jaxrs/XMLObject.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/jaxrs/XMLObject.java new file mode 100644 index 00000000..eb427650 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/prims/jaxrs/XMLObject.java @@ -0,0 +1,152 @@ +/** + * (C) Copyright IBM Corporation 2019. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.prims.jaxrs; + +import javax.xml.bind.annotation.XmlRootElement; + +/** + * with @XmlRootElement, make the XMLObject as a JAXB object + * then add/remove any atteribute with setter& getter + * + * note: please change all XMLObjects in project JAXRSJ2SEClient,JAXRSBenchService,JAXRS20Client + * they should share the same XMLObject + * @author alexzan + * + */ +@XmlRootElement +public class XMLObject { + + private String prop0001; + private String prop0002; + private String prop0003; + private String prop0004; + private String prop0005; + private String prop0006; + private String prop0007; + private String prop0008; + private String prop0009; + private String prop0010; + private String prop0011; + private String prop0012; + private String prop0013; + private String prop0014; + private String prop0015; + private String prop0016; + private String x; + + public String getProp0001() { + return prop0001; + } + public void setProp0001(String prop0001) { + this.prop0001 = prop0001; + } + public String getProp0002() { + return prop0002; + } + public void setProp0002(String prop0002) { + this.prop0002 = prop0002; + } + public String getProp0003() { + return prop0003; + } + public void setProp0003(String prop0003) { + this.prop0003 = prop0003; + } + public String getProp0004() { + return prop0004; + } + public void setProp0004(String prop0004) { + this.prop0004 = prop0004; + } + public String getProp0005() { + return prop0005; + } + public void setProp0005(String prop0005) { + this.prop0005 = prop0005; + } + public String getProp0006() { + return prop0006; + } + public void setProp0006(String prop0006) { + this.prop0006 = prop0006; + } + public String getProp0007() { + return prop0007; + } + public void setProp0007(String prop0007) { + this.prop0007 = prop0007; + } + public String getProp0008() { + return prop0008; + } + public void setProp0008(String prop0008) { + this.prop0008 = prop0008; + } + public String getProp0009() { + return prop0009; + } + public void setProp0009(String prop0009) { + this.prop0009 = prop0009; + } + public String getProp0010() { + return prop0010; + } + public void setProp0010(String prop0010) { + this.prop0010 = prop0010; + } + public String getProp0011() { + return prop0011; + } + public void setProp0011(String prop0011) { + this.prop0011 = prop0011; + } + public String getProp0012() { + return prop0012; + } + public void setProp0012(String prop0012) { + this.prop0012 = prop0012; + } + public String getProp0013() { + return prop0013; + } + public void setProp0013(String prop0013) { + this.prop0013 = prop0013; + } + public String getProp0014() { + return prop0014; + } + public void setProp0014(String prop0014) { + this.prop0014 = prop0014; + } + public String getProp0015() { + return prop0015; + } + public void setProp0015(String prop0015) { + this.prop0015 = prop0015; + } + public String getProp0016() { + return prop0016; + } + public void setProp0016(String prop0016) { + this.prop0016 = prop0016; + } + public String getX() { + return x; + } + public void setX(String x) { + this.x = x; + } +} diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/servlet/OrdersAlertFilter.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/servlet/OrdersAlertFilter.java new file mode 100644 index 00000000..9bbfa1d9 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/servlet/OrdersAlertFilter.java @@ -0,0 +1,116 @@ +/** + * (C) Copyright IBM Corporation 2015, 2022. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.servlet; + +import java.io.IOException; +import java.util.Collection; + +import javax.enterprise.inject.Any; +import javax.enterprise.inject.Instance; +import javax.inject.Inject; +import javax.servlet.Filter; +import javax.servlet.FilterChain; +import javax.servlet.FilterConfig; +import javax.servlet.ServletException; +import javax.servlet.ServletRequest; +import javax.servlet.ServletResponse; +import javax.servlet.annotation.WebFilter; +import javax.servlet.http.HttpServletRequest; + +import com.ibm.websphere.samples.daytrader.interfaces.Trace; +import com.ibm.websphere.samples.daytrader.interfaces.TradeServices; +import com.ibm.websphere.samples.daytrader.util.Diagnostics; +import com.ibm.websphere.samples.daytrader.util.Log; +import com.ibm.websphere.samples.daytrader.util.TradeConfig; +import com.ibm.websphere.samples.daytrader.util.TradeRunTimeModeLiteral; + +@WebFilter(filterName = "OrdersAlertFilter", urlPatterns = "/app") +@Trace +public class OrdersAlertFilter implements Filter { + + private TradeServices tradeAction; + + @Inject + public OrdersAlertFilter(@Any Instance services) { + super(); + tradeAction = services.select(new TradeRunTimeModeLiteral(TradeConfig.getRunTimeModeNames()[TradeConfig.getRunTimeMode()])).get(); + } + + + /** + * @see Filter#init(FilterConfig) + */ + private FilterConfig filterConfig = null; + + @Override + public void init(FilterConfig filterConfig) throws ServletException { + this.filterConfig = filterConfig; + } + + /** + * @see Filter#doFilter(ServletRequest, ServletResponse, FilterChain) + */ + @Override + public void doFilter(ServletRequest req, ServletResponse resp, FilterChain chain) throws IOException, ServletException { + if (filterConfig == null) { + return; + } + + if (TradeConfig.getDisplayOrderAlerts() == true) { + + try { + String action = req.getParameter("action"); + if (action != null) { + action = action.trim(); + if ((action.length() > 0) && (!action.equals("logout"))) { + String userID; + if (action.equals("login")) { + userID = req.getParameter("uid"); + } else { + userID = (String) ((HttpServletRequest) req).getSession().getAttribute("uidBean"); + } + + if ((userID != null) && (userID.trim().length() > 0)) { + + Collection closedOrders = tradeAction.getClosedOrders(userID); + if ((closedOrders != null) && (closedOrders.size() > 0)) { + req.setAttribute("closedOrders", closedOrders); + } + if (Log.doTrace()) { + Log.printCollection("OrderAlertFilter: userID=" + userID + " closedOrders=", closedOrders); + } + } + } + } + } catch (Exception e) { + Log.error(e, "OrdersAlertFilter - Error checking for closedOrders"); + } + } + + Diagnostics.checkDiagnostics(); + + chain.doFilter(req, resp/* wrapper */); + } + + /** + * @see Filter#destroy() + */ + @Override + public void destroy() { + this.filterConfig = null; + } + +} diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/servlet/PrimFilter.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/servlet/PrimFilter.java new file mode 100644 index 00000000..64aaa2a6 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/servlet/PrimFilter.java @@ -0,0 +1,68 @@ +/** + * (C) Copyright IBM Corporation 2015, 2022. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.servlet; + +import java.io.IOException; + +import javax.servlet.Filter; +import javax.servlet.FilterChain; +import javax.servlet.FilterConfig; +import javax.servlet.ServletException; +import javax.servlet.ServletRequest; +import javax.servlet.ServletResponse; +import javax.servlet.annotation.WebFilter; + +import com.ibm.websphere.samples.daytrader.interfaces.Trace; +import com.ibm.websphere.samples.daytrader.util.Diagnostics; + +@WebFilter(filterName = "PrimFilter", urlPatterns = "/drive/*") +@Trace +public class PrimFilter implements Filter { + + /** + * @see Filter#init(FilterConfig) + */ + private FilterConfig filterConfig = null; + + @Override + public void init(FilterConfig filterConfig) throws ServletException { + this.filterConfig = filterConfig; + } + + /** + * @see Filter#doFilter(ServletRequest, ServletResponse, FilterChain) + */ + @Override + public void doFilter(ServletRequest req, ServletResponse resp, FilterChain chain) throws IOException, ServletException { + + if (filterConfig == null) { + return; + } + + Diagnostics.checkDiagnostics(); + + chain.doFilter(req, resp/* wrapper */); + } + + /** + * @see Filter#destroy() + */ + @Override + public void destroy() { + this.filterConfig = null; + } + +} diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/servlet/TestServlet.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/servlet/TestServlet.java new file mode 100644 index 00000000..6b644d77 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/servlet/TestServlet.java @@ -0,0 +1,122 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.servlet; + +import java.io.IOException; +import java.math.BigDecimal; + +import javax.enterprise.inject.Any; +import javax.enterprise.inject.Instance; +import javax.inject.Inject; +import javax.servlet.ServletConfig; +import javax.servlet.ServletException; +import javax.servlet.annotation.WebServlet; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import com.ibm.websphere.samples.daytrader.interfaces.TradeServices; +import com.ibm.websphere.samples.daytrader.util.Log; +import com.ibm.websphere.samples.daytrader.util.TradeConfig; +import com.ibm.websphere.samples.daytrader.util.TradeRunTimeModeLiteral; + +@WebServlet(name = "TestServlet", urlPatterns = { "/TestServlet" }) +public class TestServlet extends HttpServlet { + + private static final long serialVersionUID = -2927579146688173127L; + + private TradeServices tradeAction; + + @Inject + public TestServlet(@Any Instance services) { + tradeAction = services.select(new TradeRunTimeModeLiteral(TradeConfig.getRunTimeModeNames()[TradeConfig.getRunTimeMode()])).get(); + } + + @Override + public void init(ServletConfig config) throws ServletException { + super.init(config); + } + + /** + * Process incoming HTTP GET requests + * + * @param request + * Object that encapsulates the request to the servlet + * @param response + * Object that encapsulates the response from the servlet + */ + @Override + public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { + performTask(request, response); + } + + /** + * Process incoming HTTP POST requests + * + * @param request + * Object that encapsulates the request to the servlet + * @param response + * Object that encapsulates the response from the servlet + */ + @Override + public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { + performTask(request, response); + } + + /** + * Main service method for TradeAppServlet + * + * @param request + * Object that encapsulates the request to the servlet + * @param response + * Object that encapsulates the response from the servlet + */ + public void performTask(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { + try { + Log.debug("Enter TestServlet doGet"); + //TradeDirect tradeDirect = new TradeDirect(); + for (int i = 0; i < 10; i++) { + tradeAction.createQuote("s:" + i, "Company " + i, new BigDecimal(i * 1.1)); + } + /* + * + * AccountDataBean accountData = new TradeAction().register("user1", + * "password", "fullname", "address", "email", "creditCard", new + * BigDecimal(123.45), false); + * + * OrderDataBean orderData = new TradeAction().buy("user1", "s:1", + * 100.0); orderData = new TradeAction().buy("user1", "s:2", 200.0); + * Thread.sleep(5000); accountData = new + * TradeAction().getAccountData("user1"); Collection + * holdingDataBeans = new TradeAction().getHoldings("user1"); + * PrintWriter out = resp.getWriter(); + * resp.setContentType("text/html"); + * out.write("

    "); + * out.write(accountData.toString()); + * Log.printCollection("user1 Holdings", holdingDataBeans); + * ServletContext sc = getServletContext(); + * req.setAttribute("results", "Success"); + * req.setAttribute("accountData", accountData); + * req.setAttribute("holdingDataBeans", holdingDataBeans); + * getServletContext + * ().getRequestDispatcher("/tradehome.jsp").include(req, resp); + * out.write("

    done."); + */ + } catch (Exception e) { + Log.error("TestServletException", e); + } + } +} diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/servlet/TradeAppServlet.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/servlet/TradeAppServlet.java new file mode 100644 index 00000000..4b7c529f --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/servlet/TradeAppServlet.java @@ -0,0 +1,221 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.servlet; + +import java.io.IOException; + +import javax.inject.Inject; +import javax.servlet.ServletConfig; +import javax.servlet.ServletContext; +import javax.servlet.ServletException; +import javax.servlet.annotation.WebServlet; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import javax.servlet.http.HttpSession; +import javax.servlet.http.PushBuilder; + +import com.ibm.websphere.samples.daytrader.interfaces.Trace; +import com.ibm.websphere.samples.daytrader.util.Log; +import com.ibm.websphere.samples.daytrader.util.TradeConfig; + + +/** + * + * TradeAppServlet provides the standard web interface to Trade and can be + * accessed with the Go Trade! link. Driving benchmark load using this interface + * requires a sophisticated web load generator that is capable of filling HTML + * forms and posting dynamic data. + */ + +@WebServlet(name = "TradeAppServlet", urlPatterns = { "/app" }) +@Trace +public class TradeAppServlet extends HttpServlet { + + @Inject + TradeServletAction tsAction; + + private static final long serialVersionUID = 481530522846648373L; + + /** + * Servlet initialization method. + */ + @Override + public void init(ServletConfig config) throws ServletException { + super.init(config); + java.util.Enumeration en = config.getInitParameterNames(); + while (en.hasMoreElements()) { + String parm = en.nextElement(); + String value = config.getInitParameter(parm); + TradeConfig.setConfigParam(parm, value); + } + try { + // TODO: Uncomment this once split-tier issue is resolved + // TradeDirect.init(); + } catch (Exception e) { + Log.error(e, "TradeAppServlet:init -- Error initializing TradeDirect"); + } + } + + /** + * Returns a string that contains information about TradeScenarioServlet + * + * @return The servlet information + */ + @Override + public java.lang.String getServletInfo() { + return "TradeAppServlet provides the standard web interface to Trade"; + } + + /** + * Process incoming HTTP GET requests + * + * @param request + * Object that encapsulates the request to the servlet + * @param response + * Object that encapsulates the response from the servlet + */ + @Override + public void doGet(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response) throws ServletException, IOException { + performTask(request, response); + } + + /** + * Process incoming HTTP POST requests + * + * @param request + * Object that encapsulates the request to the servlet + * @param response + * Object that encapsulates the response from the servlet + */ + @Override + public void doPost(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response) throws ServletException, IOException { + performTask(request, response); + } + + /** + * Main service method for TradeAppServlet + * + * @param request + * Object that encapsulates the request to the servlet + * @param response + * Object that encapsulates the response from the servlet + */ + public void performTask(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { + + String action = null; + String userID = null; + // String to create full dispatch path to TradeAppServlet w/ request + // Parameters + + resp.setContentType("text/html"); + + // Dyna - need status string - prepended to output + action = req.getParameter("action"); + + ServletContext ctx = getServletConfig().getServletContext(); + + if (action == null) { + tsAction.doWelcome(ctx, req, resp, ""); + return; + } else if (action.equals("login")) { + userID = req.getParameter("uid"); + String passwd = req.getParameter("passwd"); + tsAction.doLogin(ctx, req, resp, userID, passwd); + return; + } else if (action.equals("register")) { + userID = req.getParameter("user id"); + String passwd = req.getParameter("passwd"); + String cpasswd = req.getParameter("confirm passwd"); + String fullname = req.getParameter("Full Name"); + String ccn = req.getParameter("Credit Card Number"); + String money = req.getParameter("money"); + String email = req.getParameter("email"); + String smail = req.getParameter("snail mail"); + tsAction.doRegister(ctx, req, resp, userID, passwd, cpasswd, fullname, ccn, money, email, smail); + return; + } + + // The rest of the operations require the user to be logged in - + // Get the Session and validate the user. + HttpSession session = req.getSession(); + userID = (String) session.getAttribute("uidBean"); + + if (userID == null) { + System.out.println("TradeAppServlet service error: User Not Logged in"); + tsAction.doWelcome(ctx, req, resp, "User Not Logged in"); + return; + } + + // try http/2 push if we get here + // should be logged in and doing real work by this point + if (!action.equals("logout") && TradeConfig.getWebInterface() == TradeConfig.JSP_Images_HTTP2) { + pushHeaderImages(req.newPushBuilder()); + } + + if (action.equals("quotes")) { + String symbols = req.getParameter("symbols"); + tsAction.doQuotes(ctx, req, resp, userID, symbols); + } else if (action.equals("buy")) { + String symbol = req.getParameter("symbol"); + String quantity = req.getParameter("quantity"); + tsAction.doBuy(ctx, req, resp, userID, symbol, quantity); + } else if (action.equals("sell")) { + int holdingID = Integer.parseInt(req.getParameter("holdingID")); + tsAction.doSell(ctx, req, resp, userID, new Integer(holdingID)); + } else if (action.equals("portfolio") || action.equals("portfolioNoEdge")) { + tsAction.doPortfolio(ctx, req, resp, userID, "Portfolio as of " + new java.util.Date()); + } else if (action.equals("logout")) { + tsAction.doLogout(ctx, req, resp, userID); + } else if (action.equals("home")) { + tsAction.doHome(ctx, req, resp, userID, "Ready to Trade"); + } else if (action.equals("account")) { + tsAction.doAccount(ctx, req, resp, userID, ""); + } else if (action.equals("update_profile")) { + String password = req.getParameter("password"); + String cpassword = req.getParameter("cpassword"); + String fullName = req.getParameter("fullname"); + String address = req.getParameter("address"); + String creditcard = req.getParameter("creditcard"); + String email = req.getParameter("email"); + tsAction.doAccountUpdate(ctx, req, resp, userID, password == null ? "" : password.trim(), cpassword == null ? "" : cpassword.trim(), + fullName == null ? "" : fullName.trim(), address == null ? "" : address.trim(), creditcard == null ? "" : creditcard.trim(), + email == null ? "" : email.trim()); + } else if (action.equals("mksummary")) { + tsAction.doMarketSummary(ctx, req, resp, userID); + } else { + System.out.println("TradeAppServlet: Invalid Action=" + action); + tsAction.doWelcome(ctx, req, resp, "TradeAppServlet: Invalid Action" + action); + } + } + + private void pushHeaderImages(PushBuilder pushBuilder) { + if (pushBuilder != null) { + pushBuilder.path("images/menuHome.gif").addHeader("content-type", "image/gif").push(); + pushBuilder.path("images/account.gif").addHeader("content-type", "image/gif").push(); + pushBuilder.path("images/portfolio.gif").addHeader("content-type", "image/gif").push(); + pushBuilder.path("images/quotes.gif").addHeader("content-type", "image/gif").push(); + pushBuilder.path("images/logout.gif").addHeader("content-type", "image/gif").push(); + pushBuilder.path("images/graph.gif").addHeader("content-type", "image/gif").push(); + pushBuilder.path("images/line.gif").addHeader("content-type", "image/gif").push(); + Log.trace("HTTP/2 is enabled"); + } else { + Log.error("HTTP/2 not enabled"); + } + + } + +} \ No newline at end of file diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/servlet/TradeConfigServlet.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/servlet/TradeConfigServlet.java new file mode 100644 index 00000000..4abbeca6 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/servlet/TradeConfigServlet.java @@ -0,0 +1,292 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.servlet; + +import java.io.IOException; + +import javax.inject.Inject; +import javax.servlet.ServletConfig; +import javax.servlet.ServletException; +import javax.servlet.annotation.WebServlet; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + + +import com.ibm.websphere.samples.daytrader.beans.RunStatsDataBean; +import com.ibm.websphere.samples.daytrader.impl.direct.TradeDirectDBUtils; +import com.ibm.websphere.samples.daytrader.interfaces.Trace; +import com.ibm.websphere.samples.daytrader.util.Log; +import com.ibm.websphere.samples.daytrader.util.TradeConfig; + + +/** + * TradeConfigServlet provides a servlet interface to adjust DayTrader runtime parameters. + * TradeConfigServlet updates values in the {@link com.ibm.websphere.samples.daytrader.web.TradeConfig} JavaBean holding + * all configuration and runtime parameters for the Trade application + * + */ +@WebServlet(name = "TradeConfigServlet", urlPatterns = { "/config" }) +@Trace +public class TradeConfigServlet extends HttpServlet { + + @Inject + private TradeDirectDBUtils dbUtils; + + private static final long serialVersionUID = -1910381529792500095L; + + /** + * Servlet initialization method. + */ + @Override + public void init(ServletConfig config) throws ServletException { + super.init(config); + } + + /** + * Create the TradeConfig bean and pass it the config.jsp page + * to display the current Trade runtime configuration + * Creation date: (2/8/2000 3:43:59 PM) + */ + void doConfigDisplay(HttpServletRequest req, HttpServletResponse resp, String results) throws Exception { + + TradeConfig currentConfig = new TradeConfig(); + + req.setAttribute("tradeConfig", currentConfig); + req.setAttribute("status", results); + getServletConfig().getServletContext().getRequestDispatcher(TradeConfig.getPage(TradeConfig.CONFIG_PAGE)).include(req, resp); + } + + void doResetTrade(HttpServletRequest req, HttpServletResponse resp, String results) throws Exception { + RunStatsDataBean runStatsData = new RunStatsDataBean(); + TradeConfig currentConfig = new TradeConfig(); + + try { + runStatsData = dbUtils.resetTrade(false); + + req.setAttribute("runStatsData", runStatsData); + req.setAttribute("tradeConfig", currentConfig); + results += "Trade Reset completed successfully"; + req.setAttribute("status", results); + + } catch (Exception e) { + results += "Trade Reset Error - see log for details"; + Log.error(e, results); + throw e; + } + getServletConfig().getServletContext().getRequestDispatcher(TradeConfig.getPage(TradeConfig.STATS_PAGE)).include(req, resp); + + } + + /** + * Update Trade runtime configuration paramaters + * Creation date: (2/8/2000 3:44:24 PM) + */ + void doConfigUpdate(HttpServletRequest req, HttpServletResponse resp) throws Exception { + String currentConfigStr = "\n\n########## Trade configuration update. Current config:\n\n"; + + currentConfigStr += "\t\tRuntimeMode:\t\t" + TradeConfig.getRunTimeModeNames()[TradeConfig.getRunTimeMode()] + "\n"; + + String orderProcessingModeStr = req.getParameter("OrderProcessingMode"); + if (orderProcessingModeStr != null) { + try { + int i = Integer.parseInt(orderProcessingModeStr); + if ((i >= 0) && (i < TradeConfig.getOrderProcessingModeNames().length)) //Input validation + TradeConfig.setOrderProcessingMode(i); + } catch (Exception e) { + //>>rjm + Log.error(e, "TradeConfigServlet.doConfigUpdate(..): minor exception caught", "trying to set orderProcessing to " + orderProcessingModeStr, + "reverting to current value"); + + } // If the value is bad, simply revert to current + } + currentConfigStr += "\t\tOrderProcessingMode:\t\t" + TradeConfig.getOrderProcessingModeNames()[TradeConfig.getOrderProcessingMode()] + "\n"; + + String webInterfaceStr = req.getParameter("WebInterface"); + if (webInterfaceStr != null) { + try { + int i = Integer.parseInt(webInterfaceStr); + if ((i >= 0) && (i < TradeConfig.getWebInterfaceNames().length)) //Input validation + TradeConfig.setWebInterface(i); + } catch (Exception e) { + Log.error(e, "TradeConfigServlet.doConfigUpdate(..): minor exception caught", "trying to set WebInterface to " + webInterfaceStr, + "reverting to current value"); + + } // If the value is bad, simply revert to current + } + currentConfigStr += "\t\tWeb Interface:\t\t\t" + TradeConfig.getWebInterfaceNames()[TradeConfig.getWebInterface()] + "\n"; + + String parm = req.getParameter("MaxUsers"); + if ((parm != null) && (parm.length() > 0)) { + try { + TradeConfig.setMAX_USERS(Integer.parseInt(parm)); + } catch (Exception e) { + Log.error(e, "TradeConfigServlet.doConfigUpdate(..): minor exception caught", "Setting maxusers, probably error parsing string to int:" + parm, + "revertying to current value: " + TradeConfig.getMAX_USERS()); + + } //On error, revert to saved + } + parm = req.getParameter("MaxQuotes"); + if ((parm != null) && (parm.length() > 0)) { + try { + TradeConfig.setMAX_QUOTES(Integer.parseInt(parm)); + } catch (Exception e) { + //>>rjm + Log.error(e, "TradeConfigServlet: minor exception caught", "trying to set max_quotes, error on parsing int " + parm, + "reverting to current value " + TradeConfig.getMAX_QUOTES()); + //< 0)) { + try { + TradeConfig.setMarketSummaryInterval(Integer.parseInt(parm)); + } catch (Exception e) { + Log.error(e, "TradeConfigServlet: minor exception caught", "trying to set marketSummaryInterval, error on parsing int " + parm, + "reverting to current value " + TradeConfig.getMarketSummaryInterval()); + + } + } + currentConfigStr += "\t\tMarket Summary Interval:\t" + TradeConfig.getMarketSummaryInterval() + "\n"; + + parm = req.getParameter("primIterations"); + if ((parm != null) && (parm.length() > 0)) { + try { + TradeConfig.setPrimIterations(Integer.parseInt(parm)); + } catch (Exception e) { + Log.error(e, "TradeConfigServlet: minor exception caught", "trying to set primIterations, error on parsing int " + parm, + "reverting to current value " + TradeConfig.getPrimIterations()); + + } + } + currentConfigStr += "\t\tPrimitive Iterations:\t\t" + TradeConfig.getPrimIterations() + "\n"; + + String enablePublishQuotePriceChange = req.getParameter("EnablePublishQuotePriceChange"); + + if (enablePublishQuotePriceChange != null) + TradeConfig.setPublishQuotePriceChange(true); + else + TradeConfig.setPublishQuotePriceChange(false); + currentConfigStr += "\t\tTradeStreamer MDB Enabled:\t" + TradeConfig.getPublishQuotePriceChange() + "\n"; + + parm = req.getParameter("ListQuotePriceChangeFrequency"); + if ((parm != null) && (parm.length() > 0)) { + try { + TradeConfig.setListQuotePriceChangeFrequency(Integer.parseInt(parm)); + } catch (Exception e) { + Log.error(e, "TradeConfigServlet: minor exception caught", "trying to set percentSentToWebSocket, error on parsing int " + parm, + "reverting to current value " + TradeConfig.getListQuotePriceChangeFrequency()); + + } + } + currentConfigStr += "\t\t% of trades on Websocket:\t" + TradeConfig.getListQuotePriceChangeFrequency() + "\n"; + + String enableLongRun = req.getParameter("EnableLongRun"); + + if (enableLongRun != null) + TradeConfig.setLongRun(true); + else + TradeConfig.setLongRun(false); + currentConfigStr += "\t\tLong Run Enabled:\t\t" + TradeConfig.getLongRun() + "\n"; + + String displayOrderAlerts = req.getParameter("DisplayOrderAlerts"); + + if (displayOrderAlerts != null) + TradeConfig.setDisplayOrderAlerts(true); + else + TradeConfig.setDisplayOrderAlerts(false); + currentConfigStr += "\t\tDisplay Order Alerts:\t\t" + TradeConfig.getDisplayOrderAlerts() + "\n"; + + System.out.println(currentConfigStr); + } + + @Override + public void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { + + String action = null; + String result = ""; + + resp.setContentType("text/html"); + try { + action = req.getParameter("action"); + if (action == null) { + doConfigDisplay(req, resp, result + "
    Current DayTrader Configuration:
    "); + return; + } else if (action.equals("updateConfig")) { + doConfigUpdate(req, resp); + result = "
    DayTrader Configuration Updated
    "; + } else if (action.equals("resetTrade")) { + doResetTrade(req, resp, ""); + return; + } else if (action.equals("buildDB")) { + resp.setContentType("text/html"); + dbUtils.buildDB(resp.getWriter(), null); + result = "DayTrader Database Built - " + TradeConfig.getMAX_USERS() + "users created"; + } else if (action.equals("buildDBTables")) { + + resp.setContentType("text/html"); + + String dbProductName = null; + try { + dbProductName = dbUtils.checkDBProductName(); + } catch (Exception e) { + Log.error(e, "TradeBuildDB: Unable to check DB Product name"); + } + if (dbProductName == null) { + resp.getWriter().println( + "
    TradeBuildDB: **** Unable to check DB Product name, please check Database/AppServer configuration and retry ****
    "); + return; + } + + String ddlFile = null; + //Locate DDL file for the specified database + try { + resp.getWriter().println("
    TradeBuildDB: **** Database Product detected: " + dbProductName + " ****
    "); + if (dbProductName.startsWith("DB2/")) {// if db is DB2 + ddlFile = "/dbscripts/db2/Table.ddl"; + } else if (dbProductName.startsWith("Apache Derby")) { //if db is Derby + ddlFile = "/dbscripts/derby/Table.ddl"; + } else if (dbProductName.startsWith("Oracle")) { // if the Db is Oracle + ddlFile = "/dbscripts/oracle/Table.ddl"; + } else {// Unsupported "Other" Database + ddlFile = "/dbscripts/other/Table.ddl"; + resp.getWriter().println("
    TradeBuildDB: **** This Database is unsupported/untested use at your own risk ****
    "); + } + + resp.getWriter().println("
    TradeBuildDB: **** The DDL file at path " + ddlFile + " will be used ****
    "); + resp.getWriter().flush(); + } catch (Exception e) { + Log.error(e, "TradeBuildDB: Unable to locate DDL file for the specified database"); + resp.getWriter().println("
    TradeBuildDB: **** Unable to locate DDL file for the specified database ****
    "); + return; + } + + dbUtils.buildDB(resp.getWriter(), getServletContext().getResourceAsStream(ddlFile)); + + } + doConfigDisplay(req, resp, result + "Current DayTrader Configuration:"); + } catch (Exception e) { + Log.error(e, "TradeConfigServlet.service(...)", "Exception trying to perform action=" + action); + + resp.sendError(500, "TradeConfigServlet.service(...)" + "Exception trying to perform action=" + action + "\nException details: " + e.toString()); + + } + } +} diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/servlet/TradeScenarioServlet.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/servlet/TradeScenarioServlet.java new file mode 100644 index 00000000..5c05399b --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/servlet/TradeScenarioServlet.java @@ -0,0 +1,297 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.servlet; + +import java.io.IOException; +import java.io.PrintWriter; +import java.util.Collection; +import java.util.Iterator; + +import javax.servlet.ServletConfig; +import javax.servlet.ServletContext; +import javax.servlet.ServletException; +import javax.servlet.annotation.WebServlet; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import javax.servlet.http.HttpSession; + +import com.ibm.websphere.samples.daytrader.entities.HoldingDataBean; +import com.ibm.websphere.samples.daytrader.util.Log; +import com.ibm.websphere.samples.daytrader.util.TradeConfig; + +/** + * TradeScenarioServlet emulates a population of web users by generating a + * specific Trade operation for a randomly chosen user on each access to the + * URL. Test this servlet by clicking Trade Scenario and hit "Reload" on your + * browser to step through a Trade Scenario. To benchmark using this URL aim + * your favorite web load generator (such as AKStress) at the Trade Scenario URL + * and fire away. + */ +@WebServlet(name = "TradeScenarioServlet", urlPatterns = { "/scenario" }) +public class TradeScenarioServlet extends HttpServlet { + + private static final long serialVersionUID = 1410005249314201829L; + + /** + * Servlet initialization method. + */ + @Override + public void init(ServletConfig config) throws ServletException { + super.init(config); + java.util.Enumeration en = config.getInitParameterNames(); + while (en.hasMoreElements()) { + String parm = en.nextElement(); + String value = config.getInitParameter(parm); + TradeConfig.setConfigParam(parm, value); + } + } + + /** + * Returns a string that contains information about TradeScenarioServlet + * + * @return The servlet information + */ + @Override + public java.lang.String getServletInfo() { + return "TradeScenarioServlet emulates a population of web users"; + } + + /** + * Process incoming HTTP GET requests + * + * @param request + * Object that encapsulates the request to the servlet + * @param response + * Object that encapsulates the response from the servlet + */ + @Override + public void doGet(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response) throws ServletException, IOException { + performTask(request, response); + } + + /** + * Process incoming HTTP POST requests + * + * @param request + * Object that encapsulates the request to the servlet + * @param response + * Object that encapsulates the response from the servlet + */ + @Override + public void doPost(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response) throws ServletException, IOException { + performTask(request, response); + } + + /** + * Main service method for TradeScenarioServlet + * + * @param request + * Object that encapsulates the request to the servlet + * @param response + * Object that encapsulates the response from the servlet + */ + public void performTask(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { + + // Scenario generator for Trade2 + char action = ' '; + String userID = null; + + // String to create full dispatch path to TradeAppServlet w/ request + // Parameters + String dispPath = null; // Dispatch Path to TradeAppServlet + + resp.setContentType("text/html"); + + String scenarioAction = req.getParameter("action"); + if ((scenarioAction != null) && (scenarioAction.length() >= 1)) { + action = scenarioAction.charAt(0); + if (action == 'n') { // null; + try { + // resp.setContentType("text/html"); + PrintWriter out = new PrintWriter(resp.getOutputStream()); + out.println("TradeScenarioServletHello"); + out.close(); + return; + + } catch (Exception e) { + Log.error("trade_client.TradeScenarioServlet.service(...)" + "error creating printwriter from responce.getOutputStream", e); + + resp.sendError(500, + "trade_client.TradeScenarioServlet.service(...): erorr creating and writing to PrintStream created from response.getOutputStream()"); + } // end of catch + + } // end of action=='n' + } + + ServletContext ctx = null; + HttpSession session = null; + try { + ctx = getServletConfig().getServletContext(); + // These operations require the user to be logged in. Verify the + // user and if not logged in + // change the operation to a login + session = req.getSession(true); + userID = (String) session.getAttribute("uidBean"); + } catch (Exception e) { + Log.error("trade_client.TradeScenarioServlet.service(...): performing " + scenarioAction + + "error getting ServletContext,HttpSession, or UserID from session" + "will make scenarioAction a login and try to recover from there", e); + userID = null; + action = 'l'; + } + + if (userID == null) { + action = 'l'; // change to login + TradeConfig.incrementScenarioCount(); + } else if (action == ' ') { + // action is not specified perform a random operation according to + // current mix + // Tell getScenarioAction if we are an original user or a registered + // user + // -- sellDeficits should only be compensated for with original + // users. + action = TradeConfig.getScenarioAction(userID.startsWith(TradeConfig.newUserPrefix)); + } + switch (action) { + + case 'q': // quote + dispPath = tasPathPrefix + "quotes&symbols=" + TradeConfig.rndSymbols(); + ctx.getRequestDispatcher(dispPath).include(req, resp); + break; + case 'a': // account + dispPath = tasPathPrefix + "account"; + ctx.getRequestDispatcher(dispPath).include(req, resp); + break; + case 'u': // update account profile + dispPath = tasPathPrefix + "account"; + ctx.getRequestDispatcher(dispPath).include(req, resp); + + String fullName = "rnd" + System.currentTimeMillis(); + String address = "rndAddress"; + String password = "xxx"; + String email = "rndEmail"; + String creditcard = "rndCC"; + dispPath = tasPathPrefix + "update_profile&fullname=" + fullName + "&password=" + password + "&cpassword=" + password + "&address=" + address + + "&email=" + email + "&creditcard=" + creditcard; + ctx.getRequestDispatcher(dispPath).include(req, resp); + break; + case 'h': // home + dispPath = tasPathPrefix + "home"; + ctx.getRequestDispatcher(dispPath).include(req, resp); + break; + case 'l': // login + userID = TradeConfig.getUserID(); + String password2 = "xxx"; + dispPath = tasPathPrefix + "login&inScenario=true&uid=" + userID + "&passwd=" + password2; + ctx.getRequestDispatcher(dispPath).include(req, resp); + + // login is successful if the userID is written to the HTTP session + if (session.getAttribute("uidBean") == null) { + System.out.println("TradeScenario login failed. Reset DB between runs"); + } + break; + case 'o': // logout + dispPath = tasPathPrefix + "logout"; + ctx.getRequestDispatcher(dispPath).include(req, resp); + break; + case 'p': // portfolio + dispPath = tasPathPrefix + "portfolio"; + ctx.getRequestDispatcher(dispPath).include(req, resp); + break; + case 'r': // register + // Logout the current user to become a new user + // see note in TradeServletAction + req.setAttribute("TSS-RecreateSessionInLogout", Boolean.TRUE); + dispPath = tasPathPrefix + "logout"; + ctx.getRequestDispatcher(dispPath).include(req, resp); + + userID = TradeConfig.rndNewUserID(); + String passwd = "yyy"; + fullName = TradeConfig.rndFullName(); + creditcard = TradeConfig.rndCreditCard(); + String money = TradeConfig.rndBalance(); + email = TradeConfig.rndEmail(userID); + String smail = TradeConfig.rndAddress(); + dispPath = tasPathPrefix + "register&Full Name=" + fullName + "&snail mail=" + smail + "&email=" + email + "&user id=" + userID + "&passwd=" + + passwd + "&confirm passwd=" + passwd + "&money=" + money + "&Credit Card Number=" + creditcard; + ctx.getRequestDispatcher(dispPath).include(req, resp); + break; + case 's': // sell + dispPath = tasPathPrefix + "portfolioNoEdge"; + ctx.getRequestDispatcher(dispPath).include(req, resp); + + Collection holdings = (Collection) req.getAttribute("holdingDataBeans"); + int numHoldings = holdings.size(); + if (numHoldings > 0) { + // sell first available security out of holding + + Iterator it = holdings.iterator(); + boolean foundHoldingToSell = false; + while (it.hasNext()) { + HoldingDataBean holdingData = (HoldingDataBean) it.next(); + if (!(holdingData.getPurchaseDate().equals(new java.util.Date(0)))) { + Integer holdingID = holdingData.getHoldingID(); + + dispPath = tasPathPrefix + "sell&holdingID=" + holdingID; + ctx.getRequestDispatcher(dispPath).include(req, resp); + foundHoldingToSell = true; + break; + } + } + if (foundHoldingToSell) { + break; + } + + Log.trace("TradeScenario: No holding to sell -switch to buy -- userID = " + userID + " Collection count = " + numHoldings); + + + } + // At this point: A TradeScenario Sell was requested with No Stocks + // in Portfolio + // This can happen when a new registered user happens to request a + // sell before a buy + // In this case, fall through and perform a buy instead + + /* + * Trade 2.037: Added sell_deficit counter to maintain correct + * buy/sell mix. When a users portfolio is reduced to 0 holdings, a + * buy is requested instead of a sell. This throws off the buy/sell + * mix by 1. This results in unwanted holding table growth To fix + * this we increment a sell deficit counter to maintain the correct + * ratio in getScenarioAction The 'z' action from getScenario + * denotes that this is a sell action that was switched from a buy + * to reduce a sellDeficit + */ + if (userID.startsWith(TradeConfig.newUserPrefix) == false) { + TradeConfig.incrementSellDeficit(); + } + case 'b': // buy + String symbol = TradeConfig.rndSymbol(); + String amount = TradeConfig.rndQuantity() + ""; + + dispPath = tasPathPrefix + "quotes&symbols=" + symbol; + ctx.getRequestDispatcher(dispPath).include(req, resp); + + dispPath = tasPathPrefix + "buy&quantity=" + amount + "&symbol=" + symbol; + ctx.getRequestDispatcher(dispPath).include(req, resp); + break; + } // end of switch statement + } + + // URL Path Prefix for dispatching to TradeAppServlet + private static final String tasPathPrefix = "/app?action="; + +} diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/servlet/TradeServletAction.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/servlet/TradeServletAction.java new file mode 100644 index 00000000..9ffb4fc3 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/servlet/TradeServletAction.java @@ -0,0 +1,654 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.servlet; + +import java.io.IOException; +import java.io.Serializable; +import java.math.BigDecimal; +import java.util.ArrayList; +import java.util.Collection; +import java.util.Iterator; + +import javax.enterprise.context.SessionScoped; +import javax.enterprise.inject.Any; +import javax.enterprise.inject.Instance; +import javax.inject.Inject; +import javax.servlet.ServletContext; +import javax.servlet.ServletException; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import javax.servlet.http.HttpSession; + +import com.ibm.websphere.samples.daytrader.interfaces.Trace; +import com.ibm.websphere.samples.daytrader.interfaces.TradeServices; +import com.ibm.websphere.samples.daytrader.entities.AccountDataBean; +import com.ibm.websphere.samples.daytrader.entities.AccountProfileDataBean; +import com.ibm.websphere.samples.daytrader.entities.HoldingDataBean; +import com.ibm.websphere.samples.daytrader.entities.OrderDataBean; +import com.ibm.websphere.samples.daytrader.entities.QuoteDataBean; +import com.ibm.websphere.samples.daytrader.util.Log; +import com.ibm.websphere.samples.daytrader.util.TradeConfig; +import com.ibm.websphere.samples.daytrader.util.TradeRunTimeModeLiteral; + + +/** + * TradeServletAction provides servlet specific client side access to each of + * the Trade brokerage user operations. These include login, logout, buy, sell, + * getQuote, etc. TradeServletAction manages a web interface to Trade handling + * HttpRequests/HttpResponse objects and forwarding results to the appropriate + * JSP page for the web interface. TradeServletAction invokes + * {@link TradeAction} methods to actually perform each trading operation. + * + */ +@SessionScoped +@Trace +public class TradeServletAction implements Serializable { + + private static final long serialVersionUID = 7732313125198761455L; + + private TradeServices tAction; + + @Inject + public TradeServletAction(@Any Instance services) { + tAction = services.select(new TradeRunTimeModeLiteral(TradeConfig.getRunTimeModeNames()[TradeConfig.getRunTimeMode()])).get(); + } + + public TradeServletAction() { + } + + /** + * Display User Profile information such as address, email, etc. for the + * given Trader Dispatch to the Trade Account JSP for display + * + * @param userID + * The User to display profile info + * @param ctx + * the servlet context + * @param req + * the HttpRequest object + * @param resp + * the HttpResponse object + * @param results + * A short description of the results/success of this web request + * provided on the web page + * @exception javax.servlet.ServletException + * If a servlet specific exception is encountered + * @exception javax.io.IOException + * If an exception occurs while writing results back to the + * user + * + */ + void doAccount(ServletContext ctx, HttpServletRequest req, HttpServletResponse resp, String userID, String results) throws javax.servlet.ServletException, + java.io.IOException { + try { + + AccountDataBean accountData = tAction.getAccountData(userID); + AccountProfileDataBean accountProfileData = tAction.getAccountProfileData(userID); + Collection orderDataBeans = (TradeConfig.getLongRun() ? new ArrayList() : (Collection) tAction.getOrders(userID)); + + req.setAttribute("accountData", accountData); + req.setAttribute("accountProfileData", accountProfileData); + req.setAttribute("orderDataBeans", orderDataBeans); + req.setAttribute("results", results); + requestDispatch(ctx, req, resp, userID, TradeConfig.getPage(TradeConfig.ACCOUNT_PAGE)); + } catch (java.lang.IllegalArgumentException e) { // this is a user + // error so I will + // forward them to another page rather than throw a 500 + req.setAttribute("results", results + "could not find account for userID = " + userID); + requestDispatch(ctx, req, resp, userID, TradeConfig.getPage(TradeConfig.HOME_PAGE)); + // log the exception with an error level of 3 which means, handled + // exception but would invalidate a automation run + Log.error("TradeServletAction.doAccount(...)", "illegal argument, information should be in exception string", e); + } catch (Exception e) { + // log the exception with error page + throw new ServletException("TradeServletAction.doAccount(...)" + " exception user =" + userID, e); + } + + } + + /** + * Update User Profile information such as address, email, etc. for the + * given Trader Dispatch to the Trade Account JSP for display If any in put + * is incorrect revert back to the account page w/ an appropriate message + * + * @param userID + * The User to upddate profile info + * @param password + * The new User password + * @param cpassword + * Confirm password + * @param fullname + * The new User fullname info + * @param address + * The new User address info + * @param cc + * The new User credit card info + * @param email + * The new User email info + * @param ctx + * the servlet context + * @param req + * the HttpRequest object + * @param resp + * the HttpResponse object + * @exception javax.servlet.ServletException + * If a servlet specific exception is encountered + * @exception javax.io.IOException + * If an exception occurs while writing results back to the + * user + * + */ + void doAccountUpdate(ServletContext ctx, HttpServletRequest req, HttpServletResponse resp, String userID, String password, String cpassword, + String fullName, String address, String creditcard, String email) throws javax.servlet.ServletException, java.io.IOException { + String results = ""; + + // First verify input data + boolean doUpdate = true; + if (password.equals(cpassword) == false) { + results = "Update profile error: passwords do not match"; + doUpdate = false; + } else if (password.length() <= 0 || fullName.length() <= 0 || address.length() <= 0 || creditcard.length() <= 0 || email.length() <= 0) { + results = "Update profile error: please fill in all profile information fields"; + doUpdate = false; + } + AccountProfileDataBean accountProfileData = new AccountProfileDataBean(userID, password, fullName, address, email, creditcard); + try { + if (doUpdate) { + accountProfileData = tAction.updateAccountProfile(accountProfileData); + results = "Account profile update successful"; + } + + } catch (java.lang.IllegalArgumentException e) { // this is a user + // error so I will + // forward them to another page rather than throw a 500 + req.setAttribute("results", results + "invalid argument, check userID is correct, and the database is populated" + userID); + Log.error(e, "TradeServletAction.doAccount(...)", "illegal argument, information should be in exception string", + "treating this as a user error and forwarding on to a new page"); + } catch (Exception e) { + // log the exception with error page + throw new ServletException("TradeServletAction.doAccountUpdate(...)" + " exception user =" + userID, e); + } + doAccount(ctx, req, resp, userID, results); + } + + /** + * Buy a new holding of shares for the given trader Dispatch to the Trade + * Portfolio JSP for display + * + * @param userID + * The User buying shares + * @param symbol + * The stock to purchase + * @param amount + * The quantity of shares to purchase + * @param ctx + * the servlet context + * @param req + * the HttpRequest object + * @param resp + * the HttpResponse object + * @exception javax.servlet.ServletException + * If a servlet specific exception is encountered + * @exception javax.io.IOException + * If an exception occurs while writing results back to the + * user + * + */ + void doBuy(ServletContext ctx, HttpServletRequest req, HttpServletResponse resp, String userID, String symbol, String quantity) throws ServletException, + IOException { + + String results = ""; + + try { + + OrderDataBean orderData = tAction.buy(userID, symbol, new Double(quantity).doubleValue(), TradeConfig.getOrderProcessingMode()); + + req.setAttribute("orderData", orderData); + req.setAttribute("results", results); + } catch (java.lang.IllegalArgumentException e) { // this is a user + // error so I will + // forward them to another page rather than throw a 500 + req.setAttribute("results", results + "illegal argument:"); + requestDispatch(ctx, req, resp, userID, TradeConfig.getPage(TradeConfig.HOME_PAGE)); + // log the exception with an error level of 3 which means, handled + // exception but would invalidate a automation run + Log.error(e, "TradeServletAction.doBuy(...)", "illegal argument. userID = " + userID, "symbol = " + symbol); + } catch (Exception e) { + // log the exception with error page + throw new ServletException("TradeServletAction.buy(...)" + " exception buying stock " + symbol + " for user " + userID, e); + } + requestDispatch(ctx, req, resp, userID, TradeConfig.getPage(TradeConfig.ORDER_PAGE)); + } + + /** + * Create the Trade Home page with personalized information such as the + * traders account balance Dispatch to the Trade Home JSP for display + * + * @param ctx + * the servlet context + * @param req + * the HttpRequest object + * @param resp + * the HttpResponse object + * @param results + * A short description of the results/success of this web request + * provided on the web page + * @exception javax.servlet.ServletException + * If a servlet specific exception is encountered + * @exception javax.io.IOException + * If an exception occurs while writing results back to the + * user + * + */ + void doHome(ServletContext ctx, HttpServletRequest req, HttpServletResponse resp, String userID, String results) throws javax.servlet.ServletException, + java.io.IOException { + + try { + AccountDataBean accountData = tAction.getAccountData(userID); + Collection holdingDataBeans = tAction.getHoldings(userID); + + // Edge Caching: + // Getting the MarketSummary has been moved to the JSP + // MarketSummary.jsp. This makes the MarketSummary a + // standalone "fragment", and thus is a candidate for + // Edge caching. + // marketSummaryData = tAction.getMarketSummary(); + + req.setAttribute("accountData", accountData); + req.setAttribute("holdingDataBeans", holdingDataBeans); + // See Edge Caching above + // req.setAttribute("marketSummaryData", marketSummaryData); + req.setAttribute("results", results); + } catch (java.lang.IllegalArgumentException e) { // this is a user + // error so I will + // forward them to another page rather than throw a 500 + req.setAttribute("results", results + "check userID = " + userID + " and that the database is populated"); + requestDispatch(ctx, req, resp, userID, TradeConfig.getPage(TradeConfig.HOME_PAGE)); + // log the exception with an error level of 3 which means, handled + // exception but would invalidate a automation run + Log.error("TradeServletAction.doHome(...)" + "illegal argument, information should be in exception string" + + "treating this as a user error and forwarding on to a new page", e); + } catch (javax.ejb.FinderException e) { + // this is a user error so I will + // forward them to another page rather than throw a 500 + req.setAttribute("results", results + "\nCould not find account for + " + userID); + // requestDispatch(ctx, req, resp, + // TradeConfig.getPage(TradeConfig.HOME_PAGE)); + // log the exception with an error level of 3 which means, handled + // exception but would invalidate a automation run + Log.error("TradeServletAction.doHome(...)" + "Error finding account for user " + userID + + "treating this as a user error and forwarding on to a new page", e); + } catch (Exception e) { + // log the exception with error page + throw new ServletException("TradeServletAction.doHome(...)" + " exception user =" + userID, e); + } + + requestDispatch(ctx, req, resp, userID, TradeConfig.getPage(TradeConfig.HOME_PAGE)); + } + + /** + * Login a Trade User. Dispatch to the Trade Home JSP for display + * + * @param userID + * The User to login + * @param passwd + * The password supplied by the trader used to authenticate + * @param ctx + * the servlet context + * @param req + * the HttpRequest object + * @param resp + * the HttpResponse object + * @param results + * A short description of the results/success of this web request + * provided on the web page + * @exception javax.servlet.ServletException + * If a servlet specific exception is encountered + * @exception javax.io.IOException + * If an exception occurs while writing results back to the + * user + * + */ + void doLogin(ServletContext ctx, HttpServletRequest req, HttpServletResponse resp, String userID, String passwd) throws javax.servlet.ServletException, + java.io.IOException { + + String results = ""; + try { + // Got a valid userID and passwd, attempt login + if (tAction==null) { + System.out.println("null"); } + AccountDataBean accountData = tAction.login(userID, passwd); + + if (accountData != null) { + HttpSession session = req.getSession(true); + session.setAttribute("uidBean", userID); + session.setAttribute("sessionCreationDate", new java.util.Date()); + + results = "Ready to Trade"; + doHome(ctx, req, resp, userID, results); + return; + } else { + req.setAttribute("results", results + "\nCould not find account for + " + userID); + // log the exception with an error level of 3 which means, + // handled exception but would invalidate a automation run + Log.log("TradeServletAction.doLogin(...)", "Error finding account for user " + userID + "", + "user entered a bad username or the database is not populated"); + } + } catch (java.lang.IllegalArgumentException e) { // this is a user + // error so I will + // forward them to another page rather than throw a 500 + req.setAttribute("results", results + "illegal argument:" + e.getMessage()); + // log the exception with an error level of 3 which means, handled + // exception but would invalidate a automation run + Log.error(e, "TradeServletAction.doLogin(...)", "illegal argument, information should be in exception string", + "treating this as a user error and forwarding on to a new page"); + + } catch (Exception e) { + // log the exception with error page + throw new ServletException("TradeServletAction.doLogin(...)" + "Exception logging in user " + userID + "with password" + passwd, e); + } + + requestDispatch(ctx, req, resp, userID, TradeConfig.getPage(TradeConfig.WELCOME_PAGE)); + + } + + /** + * Logout a Trade User Dispatch to the Trade Welcome JSP for display + * + * @param userID + * The User to logout + * @param ctx + * the servlet context + * @param req + * the HttpRequest object + * @param resp + * the HttpResponse object + * @param results + * A short description of the results/success of this web request + * provided on the web page + * @exception javax.servlet.ServletException + * If a servlet specific exception is encountered + * @exception javax.io.IOException + * If an exception occurs while writing results back to the + * user + * + */ + void doLogout(ServletContext ctx, HttpServletRequest req, HttpServletResponse resp, String userID) throws ServletException, IOException { + String results = ""; + + try { + tAction.logout(userID); + + } catch (java.lang.IllegalArgumentException e) { // this is a user + // error so I will + // forward them to another page, at the end of the page. + req.setAttribute("results", results + "illegal argument:" + e.getMessage()); + + // log the exception with an error level of 3 which means, handled + // exception but would invalidate a automation run + Log.error(e, "TradeServletAction.doLogout(...)", "illegal argument, information should be in exception string", + "treating this as a user error and forwarding on to a new page"); + } catch (Exception e) { + // log the exception and foward to a error page + Log.error(e, "TradeServletAction.doLogout(...):", "Error logging out" + userID, "fowarding to an error page"); + // set the status_code to 500 + throw new ServletException("TradeServletAction.doLogout(...)" + "exception logging out user " + userID, e); + } + HttpSession session = req.getSession(); + if (session != null) { + session.invalidate(); + } + + // Added to actually remove a user from the authentication cache + req.logout(); + + Object o = req.getAttribute("TSS-RecreateSessionInLogout"); + if (o != null && ((Boolean) o).equals(Boolean.TRUE)) { + // Recreate Session object before writing output to the response + // Once the response headers are written back to the client the + // opportunity + // to create a new session in this request may be lost + // This is to handle only the TradeScenarioServlet case + session = req.getSession(true); + } + requestDispatch(ctx, req, resp, userID, TradeConfig.getPage(TradeConfig.WELCOME_PAGE)); + } + + /** + * Retrieve the current portfolio of stock holdings for the given trader + * Dispatch to the Trade Portfolio JSP for display + * + * @param userID + * The User requesting to view their portfolio + * @param ctx + * the servlet context + * @param req + * the HttpRequest object + * @param resp + * the HttpResponse object + * @param results + * A short description of the results/success of this web request + * provided on the web page + * @exception javax.servlet.ServletException + * If a servlet specific exception is encountered + * @exception javax.io.IOException + * If an exception occurs while writing results back to the + * user + * + */ + void doPortfolio(ServletContext ctx, HttpServletRequest req, HttpServletResponse resp, String userID, String results) throws ServletException, IOException { + + try { + // Get the holdiings for this user + + Collection quoteDataBeans = new ArrayList(); + Collection holdingDataBeans = tAction.getHoldings(userID); + + // Walk through the collection of user + // holdings and creating a list of quotes + if (holdingDataBeans.size() > 0) { + + Iterator it = holdingDataBeans.iterator(); + while (it.hasNext()) { + HoldingDataBean holdingData = (HoldingDataBean) it.next(); + QuoteDataBean quoteData = tAction.getQuote(holdingData.getQuoteID()); + quoteDataBeans.add(quoteData); + } + } else { + results = results + ". Your portfolio is empty."; + } + req.setAttribute("results", results); + req.setAttribute("holdingDataBeans", holdingDataBeans); + req.setAttribute("quoteDataBeans", quoteDataBeans); + requestDispatch(ctx, req, resp, userID, TradeConfig.getPage(TradeConfig.PORTFOLIO_PAGE)); + } catch (java.lang.IllegalArgumentException e) { // this is a user + // error so I will + // forward them to another page rather than throw a 500 + req.setAttribute("results", results + "illegal argument:" + e.getMessage()); + requestDispatch(ctx, req, resp, userID, TradeConfig.getPage(TradeConfig.PORTFOLIO_PAGE)); + // log the exception with an error level of 3 which means, handled + // exception but would invalidate a automation run + Log.error(e, "TradeServletAction.doPortfolio(...)", "illegal argument, information should be in exception string", "user error"); + } catch (Exception e) { + // log the exception with error page + throw new ServletException("TradeServletAction.doPortfolio(...)" + " exception user =" + userID, e); + } + } + + /** + * Retrieve the current Quote for the given stock symbol Dispatch to the + * Trade Quote JSP for display + * + * @param userID + * The stock symbol used to get the current quote + * @param ctx + * the servlet context + * @param req + * the HttpRequest object + * @param resp + * the HttpResponse object + * @exception javax.servlet.ServletException + * If a servlet specific exception is encountered + * @exception javax.io.IOException + * If an exception occurs while writing results back to the + * user + * + */ + void doQuotes(ServletContext ctx, HttpServletRequest req, HttpServletResponse resp, String userID, String symbols) throws ServletException, IOException { + + try { + Collection quoteDataBeans = new ArrayList(); + String[] symbolsSplit = symbols.split(","); + for (String symbol: symbolsSplit) { + QuoteDataBean quoteData = tAction.getQuote(symbol.trim()); + quoteDataBeans.add(quoteData); + } + req.setAttribute("quoteDataBeans", quoteDataBeans); + requestDispatch(ctx, req, resp, userID, TradeConfig.getPage(TradeConfig.QUOTE_PAGE)); + + } catch (Exception e) { + // log the exception with error page + throw new ServletException("TradeServletAction.doQuotes(...)" + " exception user =" + userID, e); + } + } + + /** + * Register a new trader given the provided user Profile information such as + * address, email, etc. Dispatch to the Trade Home JSP for display + * + * @param userID + * The User to create + * @param passwd + * The User password + * @param fullname + * The new User fullname info + * @param ccn + * The new User credit card info + * @param money + * The new User opening account balance + * @param address + * The new User address info + * @param email + * The new User email info + * @return The userID of the new trader + * @param ctx + * the servlet context + * @param req + * the HttpRequest object + * @param resp + * the HttpResponse object + * @exception javax.servlet.ServletException + * If a servlet specific exception is encountered + * @exception javax.io.IOException + * If an exception occurs while writing results back to the + * user + * + */ + void doRegister(ServletContext ctx, HttpServletRequest req, HttpServletResponse resp, String userID, String passwd, String cpasswd, String fullname, + String ccn, String openBalanceString, String email, String address) throws ServletException, IOException { + String results = ""; + + try { + // Validate user passwords match and are atleast 1 char in length + if ((passwd.equals(cpasswd)) && (passwd.length() >= 1)) { + + AccountDataBean accountData = tAction.register(userID, passwd, fullname, address, email, ccn, new BigDecimal(openBalanceString)); + if (accountData == null) { + results = "Registration operation failed;"; + System.out.println(results); + req.setAttribute("results", results); + requestDispatch(ctx, req, resp, userID, TradeConfig.getPage(TradeConfig.REGISTER_PAGE)); + } else { + doLogin(ctx, req, resp, userID, passwd); + results = "Registration operation succeeded; Account " + accountData.getAccountID() + " has been created."; + req.setAttribute("results", results); + + } + } else { + // Password validation failed + results = "Registration operation failed, your passwords did not match"; + System.out.println(results); + req.setAttribute("results", results); + requestDispatch(ctx, req, resp, userID, TradeConfig.getPage(TradeConfig.REGISTER_PAGE)); + } + + } catch (Exception e) { + // log the exception with error page + throw new ServletException("TradeServletAction.doRegister(...)" + " exception user =" + userID, e); + } + } + + /** + * Sell a current holding of stock shares for the given trader. Dispatch to + * the Trade Portfolio JSP for display + * + * @param userID + * The User buying shares + * @param symbol + * The stock to sell + * @param indx + * The unique index identifying the users holding to sell + * @param ctx + * the servlet context + * @param req + * the HttpRequest object + * @param resp + * the HttpResponse object + * @exception javax.servlet.ServletException + * If a servlet specific exception is encountered + * @exception javax.io.IOException + * If an exception occurs while writing results back to the + * user + * + */ + void doSell(ServletContext ctx, HttpServletRequest req, HttpServletResponse resp, String userID, Integer holdingID) throws ServletException, IOException { + String results = ""; + try { + OrderDataBean orderData = tAction.sell(userID, holdingID, TradeConfig.getOrderProcessingMode()); + + req.setAttribute("orderData", orderData); + req.setAttribute("results", results); + } catch (java.lang.IllegalArgumentException e) { // this is a user + // error so I will + // just log the exception and then later on I will redisplay the + // portfolio page + // because this is just a user exception + Log.error(e, "TradeServletAction.doSell(...)", "illegal argument, information should be in exception string", "user error"); + } catch (Exception e) { + // log the exception with error page + throw new ServletException("TradeServletAction.doSell(...)" + " exception selling holding " + holdingID + " for user =" + userID, e); + } + requestDispatch(ctx, req, resp, userID, TradeConfig.getPage(TradeConfig.ORDER_PAGE)); + } + + void doWelcome(ServletContext ctx, HttpServletRequest req, HttpServletResponse resp, String status) throws ServletException, IOException { + + req.setAttribute("results", status); + requestDispatch(ctx, req, resp, null, TradeConfig.getPage(TradeConfig.WELCOME_PAGE)); + } + + private void requestDispatch(ServletContext ctx, HttpServletRequest req, HttpServletResponse resp, String userID, String page) throws ServletException, + IOException { + + ctx.getRequestDispatcher(page).include(req, resp); + } + + void doMarketSummary(ServletContext ctx, HttpServletRequest req, HttpServletResponse resp, String userID) throws ServletException, IOException { + req.setAttribute("results", "test"); + requestDispatch(ctx, req, resp, userID, TradeConfig.getPage(TradeConfig.MARKET_SUMMARY_PAGE)); + + } +} \ No newline at end of file diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/servlet/TradeWebContextListener.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/servlet/TradeWebContextListener.java new file mode 100644 index 00000000..8931f576 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/servlet/TradeWebContextListener.java @@ -0,0 +1,116 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.servlet; + +import static javax.faces.annotation.FacesConfig.Version.JSF_2_3; + +import java.io.InputStream; +import java.util.Properties; + +import javax.faces.annotation.FacesConfig; +import javax.servlet.ServletContextEvent; +import javax.servlet.ServletContextListener; +import javax.servlet.annotation.WebListener; + +import com.ibm.websphere.samples.daytrader.util.Log; +import com.ibm.websphere.samples.daytrader.util.TradeConfig; + +@WebListener() +@FacesConfig(version = JSF_2_3) +public class TradeWebContextListener implements ServletContextListener { + + + + // receieve trade web app startup/shutown events to start(initialized)/stop + // TradeDirect + @Override + public void contextInitialized(ServletContextEvent event) { + Log.trace("TradeWebContextListener contextInitialized -- initializing TradeDirect"); + + // Load settings from properties file (if it exists) + Properties prop = new Properties(); + InputStream stream = event.getServletContext().getResourceAsStream("/properties/daytrader.properties"); + + try { + prop.load(stream); + System.out.println("Settings from daytrader.properties: " + prop); + + if (System.getenv("RUNTIME_MODE") != null) { + TradeConfig.setRunTimeMode(Integer.parseInt(System.getenv("RUNTIME_MODE"))); + } else { + TradeConfig.setRunTimeMode(Integer.parseInt(prop.getProperty("runtimeMode"))); + } + System.out.print("Running in " + TradeConfig.getRunTimeModeNames()[TradeConfig.getRunTimeMode()] + " Mode"); + + if (System.getenv("ORDER_PROCESSING_MODE") != null) { + TradeConfig.setOrderProcessingMode(Integer.parseInt(System.getenv("ORDER_PROCESSING_MODE"))); + } else { + TradeConfig.setOrderProcessingMode(Integer.parseInt(prop.getProperty("orderProcessingMode"))); + } + System.out.print("Running in " + TradeConfig.getOrderProcessingModeNames()[TradeConfig.getOrderProcessingMode()] + " Order Processing Mode"); + + if (System.getenv("MAX_USERS") != null) { + TradeConfig.setMAX_USERS(Integer.parseInt(System.getenv("MAX_USERS"))); + } else { + TradeConfig.setMAX_USERS(Integer.parseInt(prop.getProperty("maxUsers"))); + } + System.out.print("MAX_USERS = " + TradeConfig.getMAX_USERS() + " users"); + + if (System.getenv("MAX_QUOTES") != null) { + TradeConfig.setMAX_QUOTES(Integer.parseInt(System.getenv("MAX_QUOTES"))); + } else { + TradeConfig.setMAX_QUOTES(Integer.parseInt(prop.getProperty("maxQuotes"))); + } + System.out.print("MAX_QUOTES = " + TradeConfig.getMAX_QUOTES() + " quotes"); + + if (System.getenv("PUBLISH_QUOTES") != null) { + TradeConfig.setPublishQuotePriceChange(Boolean.parseBoolean(System.getenv("PUBLISH_QUOTES"))); + } else { + TradeConfig.setPublishQuotePriceChange(Boolean.parseBoolean(prop.getProperty("publishQuotePriceChange"))); + } + + if (System.getenv("DISPLAY_ORDER_ALERTS") != null) { + TradeConfig.setDisplayOrderAlerts(Boolean.parseBoolean(System.getenv("DISPLAY_ORDER_ALERTS"))); + } else { + TradeConfig.setDisplayOrderAlerts(Boolean.parseBoolean(prop.getProperty("displayOrderAlerts"))); + } + if (System.getenv("WEB_INTERFACE") != null) { + TradeConfig.setWebInterface(Integer.parseInt(System.getenv("WEB_INTERFACE"))); + } else { + TradeConfig.setWebInterface(Integer.parseInt(prop.getProperty("webInterface"))); + } + if (System.getenv("LIST_QUOTE_PRICE_CHANGE_FREQUENCY") != null) { + TradeConfig.setListQuotePriceChangeFrequency(Integer.parseInt(System.getenv("LIST_QUOTE_PRICE_CHANGE_FREQUENCY"))); + } else { + TradeConfig.setListQuotePriceChangeFrequency(Integer.parseInt(prop.getProperty("listQuotePriceChangeFrequency"))); + } + + TradeConfig.setPrimIterations(Integer.parseInt(prop.getProperty("primIterations"))); + TradeConfig.setMarketSummaryInterval(Integer.parseInt(prop.getProperty("marketSummaryInterval"))); + TradeConfig.setLongRun(Boolean.parseBoolean(prop.getProperty("longRun"))); + + } catch (Exception e) { + System.out.println("daytrader.properties not found"); + } + + } + + @Override + public void contextDestroyed(ServletContextEvent event) { + Log.trace("TradeWebContextListener contextDestroy calling TradeDirect:destroy()"); + } + +} diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/websocket/ActionDecoder.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/websocket/ActionDecoder.java new file mode 100644 index 00000000..51001d5d --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/websocket/ActionDecoder.java @@ -0,0 +1,57 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.websocket; + +import javax.websocket.DecodeException; +import javax.websocket.Decoder; +import javax.websocket.EndpointConfig; + +import com.ibm.websphere.samples.daytrader.util.Log; + +// This is coded to be a Text type decoder expecting JSON format. +// It will decode incoming messages into object of type String +public class ActionDecoder implements Decoder.Text { + + public ActionDecoder() { + } + + @Override + public void destroy() { + } + + @Override + public void init(EndpointConfig config) { + } + + @Override + public ActionMessage decode(String jsonText) throws DecodeException { + + + Log.trace("ActionDecoder:decode -- received -->" + jsonText + "<--"); + + + ActionMessage actionMessage = new ActionMessage(); + actionMessage.doDecoding(jsonText); + return actionMessage; + + } + + @Override + public boolean willDecode(String s) { + return true; + } + +} diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/websocket/ActionMessage.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/websocket/ActionMessage.java new file mode 100644 index 00000000..5abfb997 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/websocket/ActionMessage.java @@ -0,0 +1,85 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.websocket; + +import java.io.StringReader; + +import javax.json.Json; +import javax.json.stream.JsonParser; + +import com.ibm.websphere.samples.daytrader.util.Log; + +/** + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +public class ActionMessage { + + String decodedAction = null; + + public ActionMessage() { + } + + public void doDecoding(String jsonText) { + + String keyName = null; + try + { + // JSON parse + JsonParser parser = Json.createParser(new StringReader(jsonText)); + while (parser.hasNext()) { + JsonParser.Event event = parser.next(); + switch(event) { + case KEY_NAME: + keyName=parser.getString(); + break; + case VALUE_STRING: + if (keyName != null && keyName.equals("action")) { + decodedAction=parser.getString(); + } + break; + default: + break; + } + } + } catch (Exception e) { + Log.error("ActionMessage:doDecoding(" + jsonText + ") --> failed", e); + } + + + Log.trace("ActionMessage:doDecoding -- decoded action -->" + decodedAction + "<--"); + + } + + +public String getDecodedAction() { + return decodedAction; +} + +} + diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/websocket/JsonDecoder.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/websocket/JsonDecoder.java new file mode 100644 index 00000000..0a9b0827 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/websocket/JsonDecoder.java @@ -0,0 +1,57 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.websocket; + +import java.io.StringReader; + +import javax.json.Json; +import javax.json.JsonObject; +import javax.websocket.DecodeException; +import javax.websocket.Decoder; +import javax.websocket.EndpointConfig; + +public class JsonDecoder implements Decoder.Text { + + @Override + public void destroy() { + } + + @Override + public void init(EndpointConfig ec) { + } + + @Override + public JsonMessage decode(String json) throws DecodeException { + JsonObject jsonObject = Json.createReader(new StringReader(json)).readObject(); + + JsonMessage message = new JsonMessage(); + message.setKey(jsonObject.getString("key")); + message.setValue(jsonObject.getString("value")); + + return message; + } + + @Override + public boolean willDecode(String json) { + try { + Json.createReader(new StringReader(json)).readObject(); + return true; + } catch (Exception e) { + return false; + } + } + +} diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/websocket/JsonEncoder.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/websocket/JsonEncoder.java new file mode 100644 index 00000000..d9629561 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/websocket/JsonEncoder.java @@ -0,0 +1,46 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.websocket; + +import javax.json.Json; +import javax.json.JsonObject; +import javax.websocket.EncodeException; +import javax.websocket.Encoder; +import javax.websocket.EndpointConfig; + +public class JsonEncoder implements Encoder.Text{ + + @Override + public void destroy() { + } + + @Override + public void init(EndpointConfig ec) { + } + + @Override + public String encode(JsonMessage message) throws EncodeException { + + JsonObject jsonObject = Json.createObjectBuilder() + .add("key", message.getKey()) + .add("value", message.getValue()).build(); + + return jsonObject.toString(); + } + + + +} diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/websocket/JsonMessage.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/websocket/JsonMessage.java new file mode 100644 index 00000000..1483b960 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/websocket/JsonMessage.java @@ -0,0 +1,40 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.websocket; + +public class JsonMessage { + + private String key; + private String value; + + public String getKey() { + return key; + } + + public void setKey(String key) { + this.key = key; + } + + public String getValue() { + return value; + } + + public void setValue(String value) { + this.value = value; + } + + +} diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/websocket/MarketSummaryWebSocket.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/websocket/MarketSummaryWebSocket.java new file mode 100644 index 00000000..ba879abd --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/websocket/MarketSummaryWebSocket.java @@ -0,0 +1,161 @@ +/** + * (C) Copyright IBM Corporation 2015, 2021. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.websocket; + +import java.util.Iterator; +import java.util.List; +import java.util.concurrent.CopyOnWriteArrayList; +import java.util.concurrent.CountDownLatch; + +import javax.annotation.Priority; +import javax.enterprise.event.ObservesAsync; +import javax.enterprise.inject.Any; +import javax.enterprise.inject.Instance; +import javax.interceptor.Interceptor; +import javax.inject.Inject; +import javax.json.JsonObject; +import javax.websocket.CloseReason; +import javax.websocket.EndpointConfig; +import javax.websocket.OnClose; +import javax.websocket.OnError; +import javax.websocket.OnMessage; +import javax.websocket.OnOpen; +import javax.websocket.Session; +import javax.websocket.server.ServerEndpoint; + + + +import com.ibm.websphere.samples.daytrader.interfaces.MarketSummaryUpdate; +import com.ibm.websphere.samples.daytrader.interfaces.QuotePriceChange; +import com.ibm.websphere.samples.daytrader.interfaces.TradeServices; +import com.ibm.websphere.samples.daytrader.util.Log; +import com.ibm.websphere.samples.daytrader.util.RecentQuotePriceChangeList; +import com.ibm.websphere.samples.daytrader.util.TradeConfig; +import com.ibm.websphere.samples.daytrader.util.TradeRunTimeModeLiteral; + + +/** This class is a WebSocket EndPoint that sends the Market Summary in JSON form and + * encodes recent quote price changes when requested or when triggered by CDI events. + **/ + +@ServerEndpoint(value = "/marketsummary",encoders={QuotePriceChangeListEncoder.class},decoders={ActionDecoder.class}) +public class MarketSummaryWebSocket { + + @Inject + RecentQuotePriceChangeList recentQuotePriceChangeList; + + private TradeServices tradeAction; + + private static final List sessions = new CopyOnWriteArrayList<>(); + private final CountDownLatch latch = new CountDownLatch(1); + + @Inject + public MarketSummaryWebSocket(@Any Instance services) { + tradeAction = services.select(new TradeRunTimeModeLiteral(TradeConfig.getRunTimeModeNames()[TradeConfig.getRunTimeMode()])).get(); + } + + // should never be used + public MarketSummaryWebSocket(){ + } + + @OnOpen + public void onOpen(final Session session, EndpointConfig ec) { + Log.trace("MarketSummaryWebSocket:onOpen -- session -->" + session + "<--"); + + sessions.add(session); + latch.countDown(); + } + + @OnMessage + public void sendMarketSummary(ActionMessage message, Session currentSession) { + + String action = message.getDecodedAction(); + + Log.trace("MarketSummaryWebSocket:sendMarketSummary -- received -->" + action + "<--"); + + // Make sure onopen is finished + try { + latch.await(); + } catch (Exception e) { + e.printStackTrace(); + return; + } + + + if (action != null && action.equals("updateMarketSummary")) { + + try { + + JsonObject mkSummary = tradeAction.getMarketSummary().toJSON(); + + Log.trace("MarketSummaryWebSocket:sendMarketSummary -- sending -->" + mkSummary + "<--"); + + currentSession.getAsyncRemote().sendText(mkSummary.toString()); + + } catch (Exception e) { + e.printStackTrace(); + } + } else if (action != null && action.equals("updateRecentQuotePriceChange")) { + if (!recentQuotePriceChangeList.isEmpty()) { + currentSession.getAsyncRemote().sendObject(recentQuotePriceChangeList.recentList()); + } + } + } + + @OnError + public void onError(Throwable t, Session currentSession) { + Log.trace("MarketSummaryWebSocket:onError -- session -->" + currentSession + "<--"); + t.printStackTrace(); + } + + @OnClose + public void onClose(Session session, CloseReason reason) { + Log.trace("MarketSummaryWebSocket:onClose -- session -->" + session + "<--"); + sessions.remove(session); + } + + public void onStockChange(@ObservesAsync @Priority(Interceptor.Priority.APPLICATION) @QuotePriceChange String event) { + + Log.trace("MarketSummaryWebSocket:onStockChange"); + + Iterator failSafeIterator = sessions.iterator(); + while(failSafeIterator.hasNext()) { + Session s = failSafeIterator.next(); + if (s.isOpen()) { + s.getAsyncRemote().sendObject(recentQuotePriceChangeList.recentList()); + } + } + } + + public void onMarketSummarytUpdate(@ObservesAsync @Priority(Interceptor.Priority.APPLICATION) @MarketSummaryUpdate String event) { + + Log.trace("MarketSummaryWebSocket:onJMSMessage"); + + try { + JsonObject mkSummary = tradeAction.getMarketSummary().toJSON(); + + Iterator failSafeIterator = sessions.iterator(); + while(failSafeIterator.hasNext()) { + Session s = failSafeIterator.next(); + if (s.isOpen()) { + s.getAsyncRemote().sendText(mkSummary.toString()); + } + } + } catch (Exception e) { + e.printStackTrace(); + } + } +} diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/websocket/QuotePriceChangeListEncoder.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/websocket/QuotePriceChangeListEncoder.java new file mode 100644 index 00000000..0f090cee --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/web/websocket/QuotePriceChangeListEncoder.java @@ -0,0 +1,67 @@ +/** + * (C) Copyright IBM Corporation 2019. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.web.websocket; + +import java.util.Iterator; +import java.util.concurrent.CopyOnWriteArrayList; + +import javax.json.Json; +import javax.json.JsonBuilderFactory; +import javax.json.JsonObjectBuilder; +import javax.websocket.EncodeException; +import javax.websocket.Encoder; +import javax.websocket.EndpointConfig; + +import com.ibm.websphere.samples.daytrader.entities.QuoteDataBean; + + +/** This class takes a list of quotedata (from the RecentQuotePriceChangeList bean) and encodes + it to the json format the client (marektsummary.html) is expecting. **/ +public class QuotePriceChangeListEncoder implements Encoder.Text> { + + private static final JsonBuilderFactory jsonObjectFactory = Json.createBuilderFactory(null); + + public String encode(CopyOnWriteArrayList list) throws EncodeException { + + JsonObjectBuilder jObjectBuilder = jsonObjectFactory.createObjectBuilder(); + + int i = 1; + + for (Iterator iterator = list.iterator(); iterator.hasNext();) { + QuoteDataBean quotedata = iterator.next(); + + jObjectBuilder.add("change" + i + "_stock", quotedata.getSymbol()); + jObjectBuilder.add("change" + i + "_price","$" + quotedata.getPrice()); + jObjectBuilder.add("change" + i + "_change", quotedata.getChange()); + i++; + } + + return jObjectBuilder.build().toString(); + } + + @Override + public void init(EndpointConfig config) { + // TODO Auto-generated method stub + + } + + @Override + public void destroy() { + // TODO Auto-generated method stub + + } + +} diff --git a/src/test/resources/test-applications/daytrader8/src/main/liberty/config/bootstrap.properties b/src/test/resources/test-applications/daytrader8/src/main/liberty/config/bootstrap.properties new file mode 100644 index 00000000..b20b3d57 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/liberty/config/bootstrap.properties @@ -0,0 +1,2 @@ +default.http.port=9080 +default.https.port=9443 diff --git a/src/test/resources/test-applications/daytrader8/src/main/liberty/config/server.env b/src/test/resources/test-applications/daytrader8/src/main/liberty/config/server.env new file mode 100644 index 00000000..e56f3dd7 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/liberty/config/server.env @@ -0,0 +1,2 @@ +MAX_QUOTES=1000 +MAX_USERS=500 diff --git a/src/test/resources/test-applications/daytrader8/src/main/liberty/config/server.xml b/src/test/resources/test-applications/daytrader8/src/main/liberty/config/server.xml new file mode 100644 index 00000000..c951cac3 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/liberty/config/server.xml @@ -0,0 +1,79 @@ + + + + ejb-3.2 + servlet-4.0 + jsf-2.3 + jpa-2.2 + mdb-3.2 + wasJmsServer-1.0 + wasJmsClient-2.0 + cdi-2.0 + websocket-1.1 + concurrent-1.0 + jsonp-1.1 + jsonb-1.0 + beanValidation-2.0 + jaxrs-2.1 + ssl-1.0 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/src/test/resources/test-applications/daytrader8/src/main/liberty/config/server.xml_db2 b/src/test/resources/test-applications/daytrader8/src/main/liberty/config/server.xml_db2 new file mode 100644 index 00000000..a9287130 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/liberty/config/server.xml_db2 @@ -0,0 +1,74 @@ + + + ejb-3.2 + servlet-4.0 + jsf-2.3 + jpa-2.2 + mdb-3.2 + wasJmsServer-1.0 + wasJmsClient-2.0 + cdi-2.0 + websocket-1.1 + concurrent-1.0 + jsonp-1.1 + jsonb-1.0 + beanValidation-2.0 + jaxrs-2.1 + ssl-1.0 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/META-INF/LICENSE b/src/test/resources/test-applications/daytrader8/src/main/webapp/META-INF/LICENSE new file mode 100644 index 00000000..d6456956 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/webapp/META-INF/LICENSE @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/META-INF/MANIFEST.MF b/src/test/resources/test-applications/daytrader8/src/main/webapp/META-INF/MANIFEST.MF new file mode 100644 index 00000000..7b603592 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/webapp/META-INF/MANIFEST.MF @@ -0,0 +1,5 @@ +Manifest-Version: 1.0 +Ant-Version: Apache Ant 1.7.1 +Class-Path: daytrader-ee7-ejb.jar +Created-By: 2.6 (IBM Corporation) + diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/PingCDIJSF.xhtml b/src/test/resources/test-applications/daytrader8/src/main/webapp/PingCDIJSF.xhtml new file mode 100644 index 00000000..949bdce7 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/webapp/PingCDIJSF.xhtml @@ -0,0 +1,39 @@ + + + + + +DayTrader PingJSF + + + + + + + + + + +
    Hit Count: #{pingCDIJSFBean.hitCount}
    +
    + + \ No newline at end of file diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/PingHtml.html b/src/test/resources/test-applications/daytrader8/src/main/webapp/PingHtml.html new file mode 100644 index 00000000..53ec32d5 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/webapp/PingHtml.html @@ -0,0 +1,29 @@ + + + +PingHTML.html + + +
    +

    + PING HTML: +

    +

    + Hello World +

    + + diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/PingJsf.xhtml b/src/test/resources/test-applications/daytrader8/src/main/webapp/PingJsf.xhtml new file mode 100644 index 00000000..e06ab7ec --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/webapp/PingJsf.xhtml @@ -0,0 +1,145 @@ + + + + + +DayTrader PingJSF + + + + + + + + + + +
    + + + + + + + + + +
    Quotes
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    +
    +
    +
    + diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/PingJsp.jsp b/src/test/resources/test-applications/daytrader8/src/main/webapp/PingJsp.jsp new file mode 100644 index 00000000..787f8793 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/webapp/PingJsp.jsp @@ -0,0 +1,39 @@ + + + + + + + +PingJsp + + + <%!int hitCount = 0; + String initTime = new java.util.Date().toString();%> +
    +
    + PING JSP:
    +
    + Init time: <%=initTime%> + <% + hitCount++; + %> +

    + Hit Count: <%=hitCount%> +

    + + diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/PingJspEL.jsp b/src/test/resources/test-applications/daytrader8/src/main/webapp/PingJspEL.jsp new file mode 100644 index 00000000..56fc66df --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/webapp/PingJspEL.jsp @@ -0,0 +1,124 @@ + + + + +PingJspEL + + + <%@ page + import="com.ibm.websphere.samples.daytrader.util.TradeConfig,com.ibm.websphere.samples.daytrader.entities.QuoteDataBean" + session="false"%> + + <%!int hitCount = 0; + String initTime = new java.util.Date().toString();%> + + <% + // setup some variables to work with later + int someint1 = TradeConfig.rndInt(100) + 1; + pageContext.setAttribute("someint1", new Integer(someint1)); + int someint2 = TradeConfig.rndInt(100) + 1; + pageContext.setAttribute("someint2", new Integer(someint2)); + float somefloat1 = TradeConfig.rndFloat(100) + 1.0f; + pageContext.setAttribute("somefloat1", new Float(somefloat1)); + float somefloat2 = TradeConfig.rndFloat(100) + 1.0f; + pageContext.setAttribute("somefloat2", new Float(somefloat2)); + + QuoteDataBean quoteData1 = QuoteDataBean.getRandomInstance(); + pageContext.setAttribute("quoteData1", quoteData1); + QuoteDataBean quoteData2 = QuoteDataBean.getRandomInstance(); + pageContext.setAttribute("quoteData2", quoteData2); + QuoteDataBean quoteData3 = QuoteDataBean.getRandomInstance(); + pageContext.setAttribute("quoteData3", quoteData3); + QuoteDataBean quoteData4 = QuoteDataBean.getRandomInstance(); + pageContext.setAttribute("quoteData4", quoteData4); + + QuoteDataBean quoteData[] = new QuoteDataBean[4]; + quoteData[0] = quoteData1; + quoteData[1] = quoteData2; + quoteData[2] = quoteData3; + quoteData[3] = quoteData4; + pageContext.setAttribute("quoteData", quoteData); + %> + +
    +
    + PING JSP EL:
    + Init time: <%=initTime%> +

    + Hit Count: <%=hitCount++%> +

    +
    + +

    + + someint1 = + <%=someint1%>
    someint2 = + <%=someint2%>
    somefloat1 = + <%=somefloat1%>
    somefloat2 = + <%=somefloat2%>
    +

    +


    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    EL TypeEL ExpressionsResult
    Integer Arithmetic\${someint1 + someint2 - someint1 * someint2 mod + someint1}${someint1 + someint2 - someint1 * someint2 mod someint1}
    Floating Point Arithmetic\${somefloat1 + somefloat2 - somefloat1 * + somefloat2 / somefloat1}${somefloat1 + somefloat2 - somefloat1 * somefloat2 / somefloat1}
    Logical Operations\${(someint1 < someint2) && (someint1 <= someint2) + || (someint1 == someint2) && !Boolean.FALSE}${(someint1 < someint2) && (someint1 <= someint2) || (someint1 == someint2) && !Boolean.FALSE}
    Indexing Operations\${quoteData3.symbol}
    + \${quoteData[2].symbol}
    \${quoteData4["symbol"]}
    + \${header["host"]}
    \${header.host}
    +
    ${quoteData3.symbol}
    ${quoteData[1].symbol}
    + ${quoteData4["symbol"]}
    ${header["host"]}
    + ${header.host} +
    Variable Scope Tests\${(quoteData3 == null) ? "null" : quoteData3}
    + \${(noSuchVariableAtAnyScope == null) ? "null" : noSuchVariableAtAnyScope} +
    ${(quoteData3 == null) ? "null" : quoteData3}
    + ${(noSuchVariableAtAnyScope == null) ? "null" : noSuchVariableAtAnyScope} +
    + + diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/PingServlet2Jsp.jsp b/src/test/resources/test-applications/daytrader8/src/main/webapp/PingServlet2Jsp.jsp new file mode 100644 index 00000000..dfe06f6c --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/webapp/PingServlet2Jsp.jsp @@ -0,0 +1,39 @@ + + + + + + + +PingJsp + + + <%!String initTime = (new java.util.Date()).toString();%> + +
    +
    Ping Servlet2JSP:
    +
    + Init time: <%=initTime%> +
    +
    + Message from Servlet: + <%= ab.getMsg() %> + + + diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/PingWebSocketBinary.html b/src/test/resources/test-applications/daytrader8/src/main/webapp/PingWebSocketBinary.html new file mode 100644 index 00000000..8aa71445 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/webapp/PingWebSocketBinary.html @@ -0,0 +1,92 @@ + + + + +WebSocket Primitive - PingWebSocketBinary + + + + + +

    +
    + Ping WebSocket Binary
    + Init time :
    0


    + Hit Count:
    0

    + +
    + + \ No newline at end of file diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/PingWebSocketJson.html b/src/test/resources/test-applications/daytrader8/src/main/webapp/PingWebSocketJson.html new file mode 100644 index 00000000..026a40b1 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/webapp/PingWebSocketJson.html @@ -0,0 +1,112 @@ + + + + +WebSocket Primitive - PingWebSocketJson + + + + + +

    +
    + Ping WebSocket Json
    + Init time :
    0


    + Sent Count :
    0

    + Received Count:
    0

    + +
    + + \ No newline at end of file diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/PingWebSocketTextAsync.html b/src/test/resources/test-applications/daytrader8/src/main/webapp/PingWebSocketTextAsync.html new file mode 100644 index 00000000..96dfe2bb --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/webapp/PingWebSocketTextAsync.html @@ -0,0 +1,90 @@ + + + + +WebSocket Primitive - PingWebSocketTextAsync + + + + + +

    +
    + Ping WebSocket Text Async
    + Init time :
    0


    + Hit Count:
    0

    + +
    + + \ No newline at end of file diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/PingWebSocketTextSync.html b/src/test/resources/test-applications/daytrader8/src/main/webapp/PingWebSocketTextSync.html new file mode 100644 index 00000000..e454f185 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/webapp/PingWebSocketTextSync.html @@ -0,0 +1,90 @@ + + + + +WebSocket Primitive - PingWebSocketTextSync + + + + + +

    +
    + Ping WebSocket Text Sync
    + Init time :
    0


    + Hit Count:
    0

    + +
    + + \ No newline at end of file diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/WAS_V7_64-bit_performance.pdf b/src/test/resources/test-applications/daytrader8/src/main/webapp/WAS_V7_64-bit_performance.pdf new file mode 100644 index 0000000000000000000000000000000000000000..2f75b12911ab44e5b7df51606034011715b98b6a GIT binary patch literal 943593 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 Ej;G&^zUEf^)yfu_U1I8;FKb)&i1?Bn#OHsH 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

    lnWOe!ABS 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

    B5% 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

    6(7=zqgUDoH{{DYJ} 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%0AX3s6vbN#c& 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èHbAl!C$k;UTl?*MPuvQ1 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 literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/WEB-INF/beans.xml b/src/test/resources/test-applications/daytrader8/src/main/webapp/WEB-INF/beans.xml new file mode 100644 index 00000000..99546567 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/webapp/WEB-INF/beans.xml @@ -0,0 +1,22 @@ + + + + diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/WEB-INF/classes/META-INF/DEPENDENCIES b/src/test/resources/test-applications/daytrader8/src/main/webapp/WEB-INF/classes/META-INF/DEPENDENCIES new file mode 100644 index 00000000..cb8878a9 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/webapp/WEB-INF/classes/META-INF/DEPENDENCIES @@ -0,0 +1,15 @@ +// ------------------------------------------------------------------ +// Transitive dependencies of this project determined from the +// maven pom organized by organization. +// ------------------------------------------------------------------ + +DayTrader :: Web Application + + +From: 'an unknown organization' + - Unnamed - taglibs:standard:jar:1.1.1 taglibs:standard:jar:1.1.1 + + + + + diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/WEB-INF/classes/META-INF/LICENSE b/src/test/resources/test-applications/daytrader8/src/main/webapp/WEB-INF/classes/META-INF/LICENSE new file mode 100644 index 00000000..d6456956 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/webapp/WEB-INF/classes/META-INF/LICENSE @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/WEB-INF/classes/META-INF/NOTICE b/src/test/resources/test-applications/daytrader8/src/main/webapp/WEB-INF/classes/META-INF/NOTICE new file mode 100644 index 00000000..883959db --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/webapp/WEB-INF/classes/META-INF/NOTICE @@ -0,0 +1,8 @@ + +DayTrader :: Web Application +Copyright 2005-2010 Apache Software Foundation + +This product includes software developed at +The Apache Software Foundation (http://www.apache.org/). + + diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/WEB-INF/classes/META-INF/persistence.xml b/src/test/resources/test-applications/daytrader8/src/main/webapp/WEB-INF/classes/META-INF/persistence.xml new file mode 100644 index 00000000..4400b9fb --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/webapp/WEB-INF/classes/META-INF/persistence.xml @@ -0,0 +1,34 @@ + + + + + + + jdbc/TradeDataSource + + com.ibm.websphere.samples.daytrader.entities.AccountDataBean + com.ibm.websphere.samples.daytrader.entities.AccountProfileDataBean + com.ibm.websphere.samples.daytrader.entities.HoldingDataBean + com.ibm.websphere.samples.daytrader.entities.OrderDataBean + com.ibm.websphere.samples.daytrader.entities.QuoteDataBean + true + NONE + + diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/WEB-INF/classes/build.properties b/src/test/resources/test-applications/daytrader8/src/main/webapp/WEB-INF/classes/build.properties new file mode 100644 index 00000000..65f995b4 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/webapp/WEB-INF/classes/build.properties @@ -0,0 +1,16 @@ +## Licensed to the Apache Software Foundation (ASF) under one or more +## contributor license agreements. See the NOTICE file distributed with +## this work for additional information regarding copyright ownership. +## The ASF licenses this file to You under the Apache License, Version 2.0 +## (the "License"); you may not use this file except in compliance with +## the License. You may obtain a copy of the License at +## +## http://www.apache.org/licenses/LICENSE-2.0 +## +## Unless required by applicable law or agreed to in writing, software +## distributed under the License is distributed on an "AS IS" BASIS, +## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +## See the License for the specific language governing permissions and +## limitations under the License. + +ejb_version=${pom.version} diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/WEB-INF/classes/persistence.xml b/src/test/resources/test-applications/daytrader8/src/main/webapp/WEB-INF/classes/persistence.xml new file mode 100644 index 00000000..4400b9fb --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/webapp/WEB-INF/classes/persistence.xml @@ -0,0 +1,34 @@ + + + + + + + jdbc/TradeDataSource + + com.ibm.websphere.samples.daytrader.entities.AccountDataBean + com.ibm.websphere.samples.daytrader.entities.AccountProfileDataBean + com.ibm.websphere.samples.daytrader.entities.HoldingDataBean + com.ibm.websphere.samples.daytrader.entities.OrderDataBean + com.ibm.websphere.samples.daytrader.entities.QuoteDataBean + true + NONE + + diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/WEB-INF/ejb-jar.xml b/src/test/resources/test-applications/daytrader8/src/main/webapp/WEB-INF/ejb-jar.xml new file mode 100644 index 00000000..04cc73bf --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/webapp/WEB-INF/ejb-jar.xml @@ -0,0 +1,446 @@ + + + DayTrader Enterprise Bean Definitions + + + diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/WEB-INF/faces-config.xml b/src/test/resources/test-applications/daytrader8/src/main/webapp/WEB-INF/faces-config.xml new file mode 100644 index 00000000..f3c699ea --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/webapp/WEB-INF/faces-config.xml @@ -0,0 +1,120 @@ + + + + + /welcome.xhtml + + Ready to Trade + /tradehome.xhtml + + + welcome + /welcome.xhtml + + + + /register.xhtml + + Registration operation succeeded + /tradehome.xhtml + + + Registration operation failed + /register.xhtml + + + + /tradehome.xhtml + + quotes + /quote.xhtml + + + Registration operation failed + /register.xhtml + + + + /account.xhtml + + quotes + /quote.xhtml + + + Go to account + /account.xhtml + + + welcome + /welcome.xhtml + + + + /portfolio.xhtml + + quotes + /quote.xhtml + + + sell + /order.xhtml + + + + /marketSummary.xhtml + + quotes + /quote.xhtml + + + + /configure.xhtml + + welcome + /welcome.xhtml + + + config + /config.xhtml + + + database + /configure.xhtml + + + stats + /configure.xhtml + + + + /order.xhtml + + quotes + /quote.xhtml + + + + /quote.xhtml + + buy + /order.xhtml + + + diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/WEB-INF/ibm-web-bnd.xml b/src/test/resources/test-applications/daytrader8/src/main/webapp/WEB-INF/ibm-web-bnd.xml new file mode 100644 index 00000000..255c8fa6 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/webapp/WEB-INF/ibm-web-bnd.xml @@ -0,0 +1,28 @@ + + + + + + + + + + + + + diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/WEB-INF/ibm-web-ext.xml b/src/test/resources/test-applications/daytrader8/src/main/webapp/WEB-INF/ibm-web-ext.xml new file mode 100644 index 00000000..93291de1 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/webapp/WEB-INF/ibm-web-ext.xml @@ -0,0 +1,26 @@ + + + + + + + + + + + diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/WEB-INF/web.xml b/src/test/resources/test-applications/daytrader8/src/main/webapp/WEB-INF/web.xml new file mode 100644 index 00000000..ea357968 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/webapp/WEB-INF/web.xml @@ -0,0 +1,215 @@ + + + + DayTrader Web + + javax.faces.PROJECT_STAGE + Production + + + javax.faces.STATE_SAVING_METHOD + server + + + javax.faces.DEFAULT_SUFFIX + .xhtml + + + + Faces Servlet + javax.faces.webapp.FacesServlet + 0 + true + false + + + + Faces Servlet + *.faces + + + + 30 + + + + index.html + index.jsp + index.faces + + + + java.lang.Exception + /error.jsp + + + + 500 + /error.jsp + + + + diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/account.jsp b/src/test/resources/test-applications/daytrader8/src/main/webapp/account.jsp new file mode 100644 index 00000000..ebf882a4 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/webapp/account.jsp @@ -0,0 +1,392 @@ + + + + + +DayTrader Account Information + + + + + <%@ page + import="java.util.Collection, + java.util.Iterator, + java.math.BigDecimal,com.ibm.websphere.samples.daytrader.entities.OrderDataBean,com.ibm.websphere.samples.daytrader.util.FinancialUtils" + session="true" isThreadSafe="true" isErrorPage="false"%> + + + + + + + + + + + + + + + + + + + + + + + <% + boolean showAllOrders = request.getParameter("showAllOrders") == null ? false : true; + Collection closedOrders = (Collection) request.getAttribute("closedOrders"); + if ((closedOrders != null) && (closedOrders.size() > 0)) { + %> + + + + + + + <% + } + %> + +
    DayTrader AccountDayTrader
    HomeAccountMarket SummaryPortfolioQuotes/TradeLogoff
    +
    <%=new java.util.Date()%> +
    + Alert: The + following Order(s) have completed. +
    + + + <% + Iterator it = closedOrders.iterator(); + while (it.hasNext()) { + OrderDataBean closedOrderData = (OrderDataBean) it.next(); + %> + + + + + + + + + + + + + + + + + + + + + <% + } + %> + + +
    order + IDorder + statuscreation + datecompletion + datetxn + feetypesymbolquantity
    <%=closedOrderData.getOrderID()%><%=closedOrderData.getOrderStatus()%><%=closedOrderData.getOpenDate()%><%=closedOrderData.getCompletionDate()%><%=closedOrderData.getOrderFee()%><%=closedOrderData.getOrderType()%><%=FinancialUtils.printQuoteLink(closedOrderData.getSymbol())%><%=closedOrderData.getQuantity()%>
    +
    + + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    <%=results%>
    Account + Information
    account + created:<%=accountData.getCreationDate()%>last + login: <%=accountData.getLastLogin()%>
    account + ID<%=accountData.getAccountID()%>total + logins: <%=accountData.getLoginCount()%>cash + balance: <%=accountData.getBalance()%>
    user + ID:<%=accountData.getProfileID()%>total + logouts: <%=accountData.getLogoutCount()%>opening + balance: <%=accountData.getOpenBalance()%>
    + + + + + + + + + + + + + + +
    Total + Orders: <%=orderDataBeans.size()%>show + all orders
    + + + + + + + + + + + + + + + + <% + Iterator it = orderDataBeans.iterator(); + int count = 0; + while (it.hasNext()) { + if ((showAllOrders == false) && (count++ >= 5)) + break; + OrderDataBean orderData = (OrderDataBean) it.next(); + %> + + + + + + + + + + + + + <% + } + %> + +
    + Recent Orders +
    order + IDorder + Statuscreation + datecompletion + datetxn + feetypesymbolquantitypricetotal
    <%=orderData.getOrderID()%><%=orderData.getOrderStatus()%><%=orderData.getOpenDate()%><%=orderData.getCompletionDate()%><%=orderData.getOrderFee()%><%=orderData.getOrderType()%><%=FinancialUtils.printQuoteLink(orderData.getSymbol())%><%=orderData.getQuantity()%><%=orderData.getPrice()%><%=orderData.getPrice().multiply(new BigDecimal(orderData.getQuantity()))%>
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Account + Profile
    user + ID:full + name:
    password: + address: +
    confirm + password:
    credit + card:
    email + address:
    +
    +
    + + + + + + + + + + + + + +
    +
    +
    + + + + + + + +
    Note: Click any symbol + for a quote or to trade. + +
    + + +
    +
    +
    DayTrader + AccountDayTrader
    + + diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/account.xhtml b/src/test/resources/test-applications/daytrader8/src/main/webapp/account.xhtml new file mode 100644 index 00000000..30d87d69 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/webapp/account.xhtml @@ -0,0 +1,430 @@ + + + + + + DayTrader Account + + + + + +

    + + + + \ No newline at end of file diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/accountImg.jsp b/src/test/resources/test-applications/daytrader8/src/main/webapp/accountImg.jsp new file mode 100644 index 00000000..b6c6a9d1 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/webapp/accountImg.jsp @@ -0,0 +1,409 @@ + + + + + +DayTrader Account Information + + + + + <%@ page + import="java.util.Collection, + java.util.Iterator, + java.math.BigDecimal,com.ibm.websphere.samples.daytrader.entities.OrderDataBean,com.ibm.websphere.samples.daytrader.util.FinancialUtils" + session="true" isThreadSafe="true" isErrorPage="false"%> + + + + + + + + + + + + + + + + + + + + + + <% + boolean showAllOrders = request.getParameter("showAllOrders") == null ? false : true; + Collection closedOrders = (Collection) request.getAttribute("closedOrders"); + if ((closedOrders != null) && (closedOrders.size() > 0)) { + %> + + + + + + + <% + } + %> + +
    DayTrader AccountDayTrader

    <%=new java.util.Date()%>
    + Alert: The + following Order(s) have completed. +
    + + + <% + Iterator it = closedOrders.iterator(); + while (it.hasNext()) { + OrderDataBean closedOrderData = (OrderDataBean) it.next(); + %> + + + + + + + + + + + + + + + + + + + + + <% + } + %> + + +
    order + IDorder + statuscreation + datecompletion + datetxn + feetypesymbolquantity
    <%=closedOrderData.getOrderID()%><%=closedOrderData.getOrderStatus()%><%=closedOrderData.getOpenDate()%><%=closedOrderData.getCompletionDate()%><%=closedOrderData.getOrderFee()%><%=closedOrderData.getOrderType()%><%=FinancialUtils.printQuoteLink(closedOrderData.getSymbol())%><%=closedOrderData.getQuantity()%>
    +
    + + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    <%=results%>
    Account + Information
    account + created:<%=accountData.getCreationDate()%>last + login: <%=accountData.getLastLogin()%>
    account + ID<%=accountData.getAccountID()%>total + logins: <%=accountData.getLoginCount()%>cash + balance: <%=accountData.getBalance()%>
    user + ID:<%=accountData.getProfileID()%>total + logouts: <%=accountData.getLogoutCount()%>opening + balance: <%=accountData.getOpenBalance()%>
    + + + + + + + + + + + + + + +
    Total + Orders: <%=orderDataBeans.size()%>show + all orders
    + + + + + + + + + + + + + + + + <% + Iterator it = orderDataBeans.iterator(); + int count = 0; + while (it.hasNext()) { + if ((showAllOrders == false) && (count++ >= 5)) + break; + OrderDataBean orderData = (OrderDataBean) it.next(); + %> + + + + + + + + + + + + + <% + } + %> + +
    + Recent Orders +
    order + IDorder + Statuscreation + datecompletion + datetxn + feetypesymbolquantitypricetotal
    <%=orderData.getOrderID()%><%=orderData.getOrderStatus()%><%=orderData.getOpenDate()%><%=orderData.getCompletionDate()%><%=orderData.getOrderFee()%><%=orderData.getOrderType()%><%=FinancialUtils.printQuoteLink(orderData.getSymbol())%><%=orderData.getQuantity()%><%=orderData.getPrice()%><%=orderData.getPrice().multiply(new BigDecimal(orderData.getQuantity()))%>
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Account + Profile
    user + ID:full + name:
    password: + address: +
    confirm + password:
    credit + card:
    email + address:
    +
    +
    + + + + + + + + + + + + + + + + +
    +
    +
    + + + + + + + +
    Note: Click any symbol + for a quote or to trade. + +
    + + +
    +
    +
    DayTrader + AccountDayTrader
    + + diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/config.jsp b/src/test/resources/test-applications/daytrader8/src/main/webapp/config.jsp new file mode 100644 index 00000000..119712d8 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/webapp/config.jsp @@ -0,0 +1,251 @@ + + + + + + +Welcome to DayTrader + + + <%@ page + import="com.ibm.websphere.samples.daytrader.util.TradeConfig" + session="false" isThreadSafe="true" isErrorPage="false"%> + + + + + + + + + + + + + +
    DayTrader + ConfigurationDayTrader
    +
    +
    + + <% + String status; + status = (String) request.getAttribute("status"); + if (status != null) { + %> + + + + + + + + +
    <% + out.print(status); + %> +
    + <% + } + %> + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    The current DayTrader runtime + configuration is detailed below. View and + optionally update run-time parameters.  
    +
    NOTE: Parameters settings will + return to default on server restart. To + make configuration settings persistent across + application server stop/starts, edit the daytrader.props + file inside daytrader-ee7-web.war (which is inside the + daytrader ear file).
    +
    +
    Run-Time Mode +

    + <% + String configParm = "RunTimeMode"; + String names[] = TradeConfig.getRunTimeModeNames(); + int index = TradeConfig.getRunTimeMode(); + for (int i = 0; i < names.length; i++) { + out.print(" " + names[i] + "
    "); + } + %> +


    Run Time Mode determines server + implementation of the TradeServices to use in + the DayTrader application Enterprise Java Beans + including Session, Entity and Message beans or + Direct mode which uses direct database and JMS + access. See DayTrader + FAQ for details.
    Order-Processing Mode +

    + <% + configParm = "OrderProcessingMode"; + names = TradeConfig.getOrderProcessingModeNames(); + index = TradeConfig.getOrderProcessingMode(); + for (int i = 0; i < names.length; i++) { + out.print(" " + names[i] + "
    "); + } + %> +


    Order Processing Mode determines + the mode for completing stock purchase and sell + operations. Synchronous mode completes the order + immediately. Asychronous_2-Phase performs a + 2-phase commit over the EJB Entity/DB and + MDB/JMS transactions. See DayTrader FAQ for + details.
    WebInterface +

    + <% + configParm = "WebInterface"; + names = TradeConfig.getWebInterfaceNames(); + index = TradeConfig.getWebInterface(); + for (int i = 0; i < names.length; i++) { + out.print(" " + names[i] + "
    "); + } + %> +

    This setting determines the Web interface + technology used, JSPs or JSPs with static images + and GIFs.
    Miscellaneous + Settings
    DayTrader Max Users
    +
    + Trade Max Quotes
    By default the DayTrader database is + populated with 15,000 users (uid:0 - uid:199) + and 10,000 quotes (s:0 - s:399).
    +
    Market Summary Interval
    +
    < 0 Do not perform Market Summary + Operations.
    = 0 Perform market Summary + on every request.

    > 0 number of + seconds between Market Summary Operations
    +
    Primitive Iteration
    +
    By default the DayTrader primitives are + execute one operation per web request. Change + this value to repeat operations multiple times + per web request.
    + name="EnablePublishQuotePriceChange"> Publish Quote Updates
    Publish quote price changes to a JMS topic.
    +
    Percent of Quote Price Changes to List
    +
    The percent of recent trades to display on the Market Summary websocket.
    + name="DisplayOrderAlerts"> Display Order Alerts
    Display completed order alerts.
    +
    + name="EnableLongRun"> Enable long run support
    Enable long run support by disabling the + show all orders query performed on the Account + page.
    +
    +
    + + + + + + + + + + + + + + +
    +
    +
    DayTrader + ConfigurationDayTrader
    +
    + + diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/config.xhtml b/src/test/resources/test-applications/daytrader8/src/main/webapp/config.xhtml new file mode 100644 index 00000000..c0b3d78c --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/webapp/config.xhtml @@ -0,0 +1,232 @@ + + + + + DayTrader Config + + + + +
    + + + \ No newline at end of file diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/configure.html b/src/test/resources/test-applications/daytrader8/src/main/webapp/configure.html new file mode 100644 index 00000000..a5669233 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/webapp/configure.html @@ -0,0 +1,115 @@ + + + + + + +Configuration and utilities + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +

    Configuration Utilities

    +
    Benchmark + Configuration
    Tools +
    Description +
    Reset + DayTrader
    (to be done before each + run) +
    Reset the DayTrader runtime to a clean starting + point by logging off all users, removing new + registrations and other general cleanup. For + consistent results this URL should be run before + each Trade run. +
    Configure + DayTrader run-time parametersThis link provides an interface to set + configuration parameters that control DayTrader + run-time characteristics such as using EJBs or JDBC. + This link also provides utilities such as setting + the UID and Password for a remote or protected + database when using JDBC.
    (Re)-create +  DayTrader Database Tables and + IndexesThis link is used to (a) initially create or + (b) drop and re-create the DayTrader tables. A + DayTrader database should exist before doing + this action, the existing DayTrader tables, if + any, are dropped, then new tables and indexes are + created. Please stop and re-start the + Daytrader application (or your application + server) after this action and then use the + "Repopulate DayTrader Database" link below to + repopulate the new database tables. +
    (Re)-populate +  DayTrader DatabaseThis link is used to initially populate or + re-populate the DayTrader database with fictitious + users (uid:0, uid:1, ...) and stocks (s:0, s:1, + ...). First all existing users and stocks are + deleted (if any). The database is then populated + with a new set of DayTrader users and stocks. This + option does not drop and recreate the Daytrader db + tables.
    Test + DayTrader ScenarioThis links pops up a browser to manually step + through a DayTrader scenario by hitting + "Reload" on your browser
    DayTrader + VersionDayTrader application version and change + history information
    + + + diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/configure.xhtml b/src/test/resources/test-applications/daytrader8/src/main/webapp/configure.xhtml new file mode 100644 index 00000000..9e334bd1 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/webapp/configure.xhtml @@ -0,0 +1,148 @@ + + + + + DayTrader Configure + + + + + +
    + + + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +

    Configuration Utilities

    +
    + + Benchmark Configuration Tools + + + + + Description + +
    + + + Reset DayTrader +
    + (to be done before each run) +
    +
    +
    + Reset the DayTrader runtime to a clean starting point by logging off all users, removing new registrations and other general cleanup. For + consistent results this URL should be run + before each + Trade run. +
    + + Configure DayTrader run-time parameters + + This link provides an interface to set configuration parameters that control DayTrader run-time characteristics + such as using EJBs or JDBC. This link also provides utilities such as setting the UID and Password for a remote or protected database when + using JDBC.
    + + (Re)-create  DayTrader Database Tables and Indexes + + + This link is used to (a) initially create or (b) drop and re-create the DayTrader tables. + A DayTrader database should exist before doing this action + , the existing DayTrader tables, if any, are dropped, then new tables and indexes are created. + Please stop and re-start the Daytrader application (or your application server) after this action and then use the "Repopulate + DayTrader Database" link below to repopulate the new database tables. +
    + + (Re)-populate  DayTrader Database + + This link is used to initially populate or re-populate the DayTrader database with fictitious users (uid:0, + uid:1, ...) and stocks (s:0, s:1, ...). First all existing users and stocks are deleted (if any). The database is then populated with a new + set of DayTrader users and stocks. This option does not drop and recreate the Daytrader db tables.
    + DayTrader Version + DayTrader application version and change history information
    +
    +
    +
    +
    + + +
    + \ No newline at end of file diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/contentHome.html b/src/test/resources/test-applications/daytrader8/src/main/webapp/contentHome.html new file mode 100644 index 00000000..a30929c9 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/webapp/contentHome.html @@ -0,0 +1,87 @@ + + + + + +Daytrader performance benchmark sample overview + + + + + + + + + + + + + + +
    +
    +
    +

    + Overview +

    +
    + The + Daytrader performance benchmark sample provides a suite of workloads for characterizing performance of + Java EE Application Servers. The workloads + consist of an end to end web application and a full set of primitives. The applications are a + collection of Java classes, Java Servlets, JavaServer Pages, and Enterprise Java + Beans built to open Java EE APIs. Together these provide versatile and portable test cases + designed to measure aspects of scalability and performance. + +
    +

    + +
    DayTrader J2EE Components
    + Model-View-Controller Architecture +

    +
    + DayTrader
    + DayTrader is an end-to-end benchmark + and performance sample application. It provides a + real world Java EE workload.

    DayTrader's new + design spans Java EE 7, including the new WebSockets specification. Other Java EE features include JSPs, Servlets, EJBs, JPA, JDBC, JSF, JMS, MDBs, and + transactions (synchronous and asynchronous/2-phase commit).

    Primitives
    +
    The Primitives provide a + set of workloads to individually test various + components of an Application Server. + The primitives leverage the DayTrader + application infrastructure to test specific + Java EE components such as the servlet + engine, JSP support, EJB Entitiy, Session and + Message Driven beans, HTTP Session support and + more. + +
    +
    + Additional + overview information is included in the FAQ + +
    +
    +
    +
    + + + diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/dbscripts/db2/Table.ddl b/src/test/resources/test-applications/daytrader8/src/main/webapp/dbscripts/db2/Table.ddl new file mode 100644 index 00000000..124e43a2 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/webapp/dbscripts/db2/Table.ddl @@ -0,0 +1,289 @@ +## (C) Copyright IBM Corporation 2015. +## +## Licensed under the Apache License, Version 2.0 (the "License"); +## you may not use this file except in compliance with the License. +## You may obtain a copy of the License at +## +## http://www.apache.org/licenses/LICENSE-2.0 +## +## Unless required by applicable law or agreed to in writing, software +## distributed under the License is distributed on an "AS IS" BASIS, +## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +## See the License for the specific language governing permissions and +## limitations under the License. + +DROP TABLE HOLDINGEJB; +DROP TABLE ACCOUNTPROFILEEJB; +DROP TABLE QUOTEEJB; +DROP TABLE KEYGENEJB; +DROP TABLE ACCOUNTEJB; +DROP TABLE ORDEREJB; + +DROP TABLESPACE "HOLDING_TS"; +DROP TABLESPACE "ACCOUNTP_TS"; +DROP TABLESPACE "QUOTE_TS"; + +DROP TABLESPACE "ACCOUNT_ITS1"; +DROP TABLESPACE "ACCOUNT_ITS2"; +DROP TABLESPACE "ACCOUNT_ITS3"; +DROP TABLESPACE "ACCOUNT_ITS4"; +DROP TABLESPACE "ACCOUNT_ITS5"; +DROP TABLESPACE "ACCOUNT_ITS6"; +DROP TABLESPACE "ACCOUNT_ITS7"; + +DROP TABLESPACE "QUOTE_ITS1"; +DROP TABLESPACE "QUOTE_ITS2"; +DROP TABLESPACE "QUOTE_ITS3"; +DROP TABLESPACE "QUOTE_ITS4"; +DROP TABLESPACE "QUOTE_ITS5"; +DROP TABLESPACE "QUOTE_ITS6"; +DROP TABLESPACE "QUOTE_ITS7"; +DROP TABLESPACE "QUOTE_ITS8"; +DROP TABLESPACE "QUOTE_ITS9"; +DROP TABLESPACE "QUOTE_ITS10"; +DROP TABLESPACE "QUOTE_ITS11"; +DROP TABLESPACE "QUOTE_ITS12"; +DROP TABLESPACE "QUOTE_ITS13"; +DROP TABLESPACE "QUOTE_ITS14"; +DROP TABLESPACE "QUOTE_ITS15"; +DROP TABLESPACE "QUOTE_ITS16"; +DROP TABLESPACE "QUOTE_ITS17"; +DROP TABLESPACE "QUOTE_ITS18"; +DROP TABLESPACE "QUOTE_ITS19"; +DROP TABLESPACE "QUOTE_ITS20"; + +DROP TABLESPACE "KEYGENE_TS"; +DROP TABLESPACE "ACCOUNTE_TS"; +DROP TABLESPACE "ORDER_TS"; + +DROP BUFFERPOOL "HOLDING_BP"; +CREATE BUFFERPOOL "HOLDING_BP" SIZE AUTOMATIC PAGESIZE 4096; +DROP BUFFERPOOL "ACCOUNTP_BP"; +CREATE BUFFERPOOL "ACCOUNTP_BP" SIZE AUTOMATIC PAGESIZE 4096; +DROP BUFFERPOOL "QUOTE_BP"; +CREATE BUFFERPOOL "QUOTE_BP" SIZE AUTOMATIC PAGESIZE 4096; + + +DROP BUFFERPOOL "ACCOUNT_IBP1"; +CREATE BUFFERPOOL "ACCOUNT_IBP1" SIZE AUTOMATIC PAGESIZE 4096; +DROP BUFFERPOOL "ACCOUNT_IBP2"; +CREATE BUFFERPOOL "ACCOUNT_IBP2" SIZE AUTOMATIC PAGESIZE 4096; +DROP BUFFERPOOL "ACCOUNT_IBP3"; +CREATE BUFFERPOOL "ACCOUNT_IBP3" SIZE AUTOMATIC PAGESIZE 4096; +DROP BUFFERPOOL "ACCOUNT_IBP4"; +CREATE BUFFERPOOL "ACCOUNT_IBP4" SIZE AUTOMATIC PAGESIZE 4096; +DROP BUFFERPOOL "ACCOUNT_IBP5"; +CREATE BUFFERPOOL "ACCOUNT_IBP5" SIZE AUTOMATIC PAGESIZE 4096; +DROP BUFFERPOOL "ACCOUNT_IBP6"; +CREATE BUFFERPOOL "ACCOUNT_IBP6" SIZE AUTOMATIC PAGESIZE 4096; +DROP BUFFERPOOL "ACCOUNT_IBP7"; +CREATE BUFFERPOOL "ACCOUNT_IBP7" SIZE AUTOMATIC PAGESIZE 4096; + +DROP BUFFERPOOL "QUOTE_IBP1"; +CREATE BUFFERPOOL "QUOTE_IBP1" SIZE AUTOMATIC PAGESIZE 4096; +DROP BUFFERPOOL "QUOTE_IBP2"; +CREATE BUFFERPOOL "QUOTE_IBP2" SIZE AUTOMATIC PAGESIZE 4096; +DROP BUFFERPOOL "QUOTE_IBP3"; +CREATE BUFFERPOOL "QUOTE_IBP3" SIZE AUTOMATIC PAGESIZE 4096; +DROP BUFFERPOOL "QUOTE_IBP4"; +CREATE BUFFERPOOL "QUOTE_IBP4" SIZE AUTOMATIC PAGESIZE 4096; +DROP BUFFERPOOL "QUOTE_IBP5"; +CREATE BUFFERPOOL "QUOTE_IBP5" SIZE AUTOMATIC PAGESIZE 4096; +DROP BUFFERPOOL "QUOTE_IBP6"; +CREATE BUFFERPOOL "QUOTE_IBP6" SIZE AUTOMATIC PAGESIZE 4096; +DROP BUFFERPOOL "QUOTE_IBP7"; +CREATE BUFFERPOOL "QUOTE_IBP7" SIZE AUTOMATIC PAGESIZE 4096; +DROP BUFFERPOOL "QUOTE_IBP8"; +CREATE BUFFERPOOL "QUOTE_IBP8" SIZE AUTOMATIC PAGESIZE 4096; +DROP BUFFERPOOL "QUOTE_IBP9"; +CREATE BUFFERPOOL "QUOTE_IBP9" SIZE AUTOMATIC PAGESIZE 4096; +DROP BUFFERPOOL "QUOTE_IBP10"; +CREATE BUFFERPOOL "QUOTE_IBP10" SIZE AUTOMATIC PAGESIZE 4096; +DROP BUFFERPOOL "QUOTE_IBP11"; +CREATE BUFFERPOOL "QUOTE_IBP11" SIZE AUTOMATIC PAGESIZE 4096; +DROP BUFFERPOOL "QUOTE_IBP12"; +CREATE BUFFERPOOL "QUOTE_IBP12" SIZE AUTOMATIC PAGESIZE 4096; +DROP BUFFERPOOL "QUOTE_IBP13"; +CREATE BUFFERPOOL "QUOTE_IBP13" SIZE AUTOMATIC PAGESIZE 4096; +DROP BUFFERPOOL "QUOTE_IBP14"; +CREATE BUFFERPOOL "QUOTE_IBP14" SIZE AUTOMATIC PAGESIZE 4096; +DROP BUFFERPOOL "QUOTE_IBP15"; +CREATE BUFFERPOOL "QUOTE_IBP15" SIZE AUTOMATIC PAGESIZE 4096; +DROP BUFFERPOOL "QUOTE_IBP16"; +CREATE BUFFERPOOL "QUOTE_IBP16" SIZE AUTOMATIC PAGESIZE 4096; +DROP BUFFERPOOL "QUOTE_IBP17"; +CREATE BUFFERPOOL "QUOTE_IBP17" SIZE AUTOMATIC PAGESIZE 4096; +DROP BUFFERPOOL "QUOTE_IBP18"; +CREATE BUFFERPOOL "QUOTE_IBP18" SIZE AUTOMATIC PAGESIZE 4096; +DROP BUFFERPOOL "QUOTE_IBP19"; +CREATE BUFFERPOOL "QUOTE_IBP19" SIZE AUTOMATIC PAGESIZE 4096; +DROP BUFFERPOOL "QUOTE_IBP20"; +CREATE BUFFERPOOL "QUOTE_IBP20" SIZE AUTOMATIC PAGESIZE 4096; + + + +DROP BUFFERPOOL "KEYGENE_BP"; +CREATE BUFFERPOOL "KEYGENE_BP" SIZE AUTOMATIC PAGESIZE 4096; +DROP BUFFERPOOL "ACCOUNTE_BP"; +CREATE BUFFERPOOL "ACCOUNTE_BP" SIZE AUTOMATIC PAGESIZE 4096; +DROP BUFFERPOOL "ORDER_BP"; +CREATE BUFFERPOOL "ORDER_BP" SIZE AUTOMATIC PAGESIZE 4096; + +CREATE LARGE TABLESPACE "HOLDING_TS" PAGESIZE 4096 MANAGED BY AUTOMATIC STORAGE BUFFERPOOL "HOLDING_BP" AUTORESIZE YES NO FILE SYSTEM CACHING; +CREATE LARGE TABLESPACE "ACCOUNTP_TS" PAGESIZE 4096 MANAGED BY AUTOMATIC STORAGE BUFFERPOOL "ACCOUNTP_BP" AUTORESIZE YES NO FILE SYSTEM CACHING; +CREATE LARGE TABLESPACE "QUOTE_TS" PAGESIZE 4096 MANAGED BY AUTOMATIC STORAGE BUFFERPOOL "QUOTE_BP" AUTORESIZE YES NO FILE SYSTEM CACHING; + +CREATE LARGE TABLESPACE "QUOTE_ITS1" PAGESIZE 4096 MANAGED BY AUTOMATIC STORAGE BUFFERPOOL "QUOTE_IBP1" AUTORESIZE YES NO FILE SYSTEM CACHING; +CREATE LARGE TABLESPACE "QUOTE_ITS2" PAGESIZE 4096 MANAGED BY AUTOMATIC STORAGE BUFFERPOOL "QUOTE_IBP2" AUTORESIZE YES NO FILE SYSTEM CACHING; +CREATE LARGE TABLESPACE "QUOTE_ITS3" PAGESIZE 4096 MANAGED BY AUTOMATIC STORAGE BUFFERPOOL "QUOTE_IBP3" AUTORESIZE YES NO FILE SYSTEM CACHING; +CREATE LARGE TABLESPACE "QUOTE_ITS4" PAGESIZE 4096 MANAGED BY AUTOMATIC STORAGE BUFFERPOOL "QUOTE_IBP4" AUTORESIZE YES NO FILE SYSTEM CACHING; +CREATE LARGE TABLESPACE "QUOTE_ITS5" PAGESIZE 4096 MANAGED BY AUTOMATIC STORAGE BUFFERPOOL "QUOTE_IBP5" AUTORESIZE YES NO FILE SYSTEM CACHING; +CREATE LARGE TABLESPACE "QUOTE_ITS6" PAGESIZE 4096 MANAGED BY AUTOMATIC STORAGE BUFFERPOOL "QUOTE_IBP6" AUTORESIZE YES NO FILE SYSTEM CACHING; +CREATE LARGE TABLESPACE "QUOTE_ITS7" PAGESIZE 4096 MANAGED BY AUTOMATIC STORAGE BUFFERPOOL "QUOTE_IBP7" AUTORESIZE YES NO FILE SYSTEM CACHING; +CREATE LARGE TABLESPACE "QUOTE_ITS8" PAGESIZE 4096 MANAGED BY AUTOMATIC STORAGE BUFFERPOOL "QUOTE_IBP8" AUTORESIZE YES NO FILE SYSTEM CACHING; +CREATE LARGE TABLESPACE "QUOTE_ITS9" PAGESIZE 4096 MANAGED BY AUTOMATIC STORAGE BUFFERPOOL "QUOTE_IBP9" AUTORESIZE YES NO FILE SYSTEM CACHING; +CREATE LARGE TABLESPACE "QUOTE_ITS10" PAGESIZE 4096 MANAGED BY AUTOMATIC STORAGE BUFFERPOOL "QUOTE_IBP10" AUTORESIZE YES NO FILE SYSTEM CACHING; +CREATE LARGE TABLESPACE "QUOTE_ITS11" PAGESIZE 4096 MANAGED BY AUTOMATIC STORAGE BUFFERPOOL "QUOTE_IBP11" AUTORESIZE YES NO FILE SYSTEM CACHING; +CREATE LARGE TABLESPACE "QUOTE_ITS12" PAGESIZE 4096 MANAGED BY AUTOMATIC STORAGE BUFFERPOOL "QUOTE_IBP12" AUTORESIZE YES NO FILE SYSTEM CACHING; +CREATE LARGE TABLESPACE "QUOTE_ITS13" PAGESIZE 4096 MANAGED BY AUTOMATIC STORAGE BUFFERPOOL "QUOTE_IBP13" AUTORESIZE YES NO FILE SYSTEM CACHING; +CREATE LARGE TABLESPACE "QUOTE_ITS14" PAGESIZE 4096 MANAGED BY AUTOMATIC STORAGE BUFFERPOOL "QUOTE_IBP14" AUTORESIZE YES NO FILE SYSTEM CACHING; +CREATE LARGE TABLESPACE "QUOTE_ITS15" PAGESIZE 4096 MANAGED BY AUTOMATIC STORAGE BUFFERPOOL "QUOTE_IBP15" AUTORESIZE YES NO FILE SYSTEM CACHING; +CREATE LARGE TABLESPACE "QUOTE_ITS16" PAGESIZE 4096 MANAGED BY AUTOMATIC STORAGE BUFFERPOOL "QUOTE_IBP16" AUTORESIZE YES NO FILE SYSTEM CACHING; +CREATE LARGE TABLESPACE "QUOTE_ITS17" PAGESIZE 4096 MANAGED BY AUTOMATIC STORAGE BUFFERPOOL "QUOTE_IBP17" AUTORESIZE YES NO FILE SYSTEM CACHING; +CREATE LARGE TABLESPACE "QUOTE_ITS18" PAGESIZE 4096 MANAGED BY AUTOMATIC STORAGE BUFFERPOOL "QUOTE_IBP18" AUTORESIZE YES NO FILE SYSTEM CACHING; +CREATE LARGE TABLESPACE "QUOTE_ITS19" PAGESIZE 4096 MANAGED BY AUTOMATIC STORAGE BUFFERPOOL "QUOTE_IBP19" AUTORESIZE YES NO FILE SYSTEM CACHING; +CREATE LARGE TABLESPACE "QUOTE_ITS20" PAGESIZE 4096 MANAGED BY AUTOMATIC STORAGE BUFFERPOOL "QUOTE_IBP20" AUTORESIZE YES NO FILE SYSTEM CACHING; + +CREATE LARGE TABLESPACE "ACCOUNT_ITS1" PAGESIZE 4096 MANAGED BY AUTOMATIC STORAGE BUFFERPOOL "ACCOUNT_IBP1" AUTORESIZE YES NO FILE SYSTEM CACHING; +CREATE LARGE TABLESPACE "ACCOUNT_ITS2" PAGESIZE 4096 MANAGED BY AUTOMATIC STORAGE BUFFERPOOL "ACCOUNT_IBP2" AUTORESIZE YES NO FILE SYSTEM CACHING; +CREATE LARGE TABLESPACE "ACCOUNT_ITS3" PAGESIZE 4096 MANAGED BY AUTOMATIC STORAGE BUFFERPOOL "ACCOUNT_IBP3" AUTORESIZE YES NO FILE SYSTEM CACHING; +CREATE LARGE TABLESPACE "ACCOUNT_ITS4" PAGESIZE 4096 MANAGED BY AUTOMATIC STORAGE BUFFERPOOL "ACCOUNT_IBP4" AUTORESIZE YES NO FILE SYSTEM CACHING; +CREATE LARGE TABLESPACE "ACCOUNT_ITS5" PAGESIZE 4096 MANAGED BY AUTOMATIC STORAGE BUFFERPOOL "ACCOUNT_IBP5" AUTORESIZE YES NO FILE SYSTEM CACHING; +CREATE LARGE TABLESPACE "ACCOUNT_ITS6" PAGESIZE 4096 MANAGED BY AUTOMATIC STORAGE BUFFERPOOL "ACCOUNT_IBP6" AUTORESIZE YES NO FILE SYSTEM CACHING; +CREATE LARGE TABLESPACE "ACCOUNT_ITS7" PAGESIZE 4096 MANAGED BY AUTOMATIC STORAGE BUFFERPOOL "ACCOUNT_IBP7" AUTORESIZE YES NO FILE SYSTEM CACHING; + +CREATE LARGE TABLESPACE "KEYGENE_TS" PAGESIZE 4096 MANAGED BY AUTOMATIC STORAGE BUFFERPOOL "KEYGENE_BP" AUTORESIZE YES NO FILE SYSTEM CACHING; +CREATE LARGE TABLESPACE "ACCOUNTE_TS" PAGESIZE 4096 MANAGED BY AUTOMATIC STORAGE BUFFERPOOL "ACCOUNTE_BP" AUTORESIZE YES NO FILE SYSTEM CACHING; +CREATE LARGE TABLESPACE "ORDER_TS" PAGESIZE 4096 MANAGED BY AUTOMATIC STORAGE BUFFERPOOL "ORDER_BP" AUTORESIZE YES NO FILE SYSTEM CACHING; + +CREATE TABLE HOLDINGEJB + (PURCHASEPRICE DECIMAL(14, 2), + HOLDINGID INTEGER NOT NULL, + QUANTITY DOUBLE NOT NULL, + PURCHASEDATE TIMESTAMP, + ACCOUNT_ACCOUNTID INTEGER, + QUOTE_SYMBOL VARCHAR(250)) IN "HOLDING_TS" INDEX IN "HOLDING_TS"; + +ALTER TABLE HOLDINGEJB + ADD CONSTRAINT PK_HOLDINGEJB PRIMARY KEY (HOLDINGID); + +ALTER TABLE HOLDINGEJB APPEND ON; + +CREATE TABLE ACCOUNTPROFILEEJB + (ADDRESS VARCHAR(250), + PASSWD VARCHAR(250), + USERID VARCHAR(250) NOT NULL, + EMAIL VARCHAR(250), + CREDITCARD VARCHAR(250), + FULLNAME VARCHAR(250)) IN "ACCOUNTP_TS" INDEX IN "ACCOUNTP_TS"; + +ALTER TABLE ACCOUNTPROFILEEJB + ADD CONSTRAINT PK_ACCOUNTPROFILE2 PRIMARY KEY (USERID); + +CREATE TABLE QUOTEEJB + (LOW DECIMAL(14, 2), + OPEN1 DECIMAL(14, 2), + VOLUME DOUBLE NOT NULL, + PRICE DECIMAL(14, 2), + HIGH DECIMAL(14, 2), + COMPANYNAME VARCHAR(250), + SYMBOL VARCHAR(250) NOT NULL, + CHANGE1 DOUBLE NOT NULL) IN "QUOTE_TS" INDEX IN "QUOTE_TS" PARTITION BY RANGE("SYMBOL") + (PART "PART0" STARTING('s:0') ENDING('s:1000') IN "QUOTE_TS" INDEX IN "QUOTE_ITS1", + PART "PART10" ENDING('s:10999') IN "QUOTE_TS" INDEX IN "QUOTE_ITS11", + PART "PART11" ENDING('s:11999') IN "QUOTE_TS" INDEX IN "QUOTE_ITS12", + PART "PART12" ENDING('s:12999') IN "QUOTE_TS" INDEX IN "QUOTE_ITS13", + PART "PART13" ENDING('s:13999') IN "QUOTE_TS" INDEX IN "QUOTE_ITS14", + PART "PART14" ENDING('s:14999') IN "QUOTE_TS" INDEX IN "QUOTE_ITS15", + PART "PART15" ENDING('s:15999') IN "QUOTE_TS" INDEX IN "QUOTE_ITS16", + PART "PART16" ENDING('s:16999') IN "QUOTE_TS" INDEX IN "QUOTE_ITS17", + PART "PART17" ENDING('s:17999') IN "QUOTE_TS" INDEX IN "QUOTE_ITS18", + PART "PART18" ENDING('s:18999') IN "QUOTE_TS" INDEX IN "QUOTE_ITS19", + PART "PART1" ENDING('s:1999') IN "QUOTE_TS" INDEX IN "QUOTE_ITS2", + PART "PART19" ENDING('s:20001') IN "QUOTE_TS" INDEX IN "QUOTE_ITS20", + PART "PART2" ENDING('s:2999') IN "QUOTE_TS" INDEX IN "QUOTE_ITS3", + PART "PART3" ENDING('s:3999') IN "QUOTE_TS" INDEX IN "QUOTE_ITS4", + PART "PART4" ENDING('s:4999') IN "QUOTE_TS" INDEX IN "QUOTE_ITS5", + PART "PART5" ENDING('s:5999') IN "QUOTE_TS" INDEX IN "QUOTE_ITS6", + PART "PART6" ENDING('s:6999') IN "QUOTE_TS" INDEX IN "QUOTE_ITS7", + PART "PART7" ENDING('s:7999') IN "QUOTE_TS" INDEX IN "QUOTE_ITS8", + PART "PART8" ENDING('s:8999') IN "QUOTE_TS" INDEX IN "QUOTE_ITS9", + PART "PART9" ENDING('s:9999') IN "QUOTE_TS" INDEX IN "QUOTE_ITS10"); + +CREATE UNIQUE INDEX QUOTE_SYM ON QUOTEEJB(SYMBOL); + +ALTER TABLE QUOTEEJB + ADD CONSTRAINT PK_QUOTEEJB PRIMARY KEY (SYMBOL); + + +CREATE TABLE KEYGENEJB + (KEYVAL INTEGER NOT NULL, + KEYNAME VARCHAR(250) NOT NULL) IN "KEYGENE_TS" INDEX IN "KEYGENE_TS"; + +ALTER TABLE KEYGENEJB + ADD CONSTRAINT PK_KEYGENEJB PRIMARY KEY (KEYNAME); + +INSERT INTO KEYGENEJB (KEYNAME,KEYVAL) VALUES ('account', 0); +INSERT INTO KEYGENEJB (KEYNAME,KEYVAL) VALUES ('holding', 0); +INSERT INTO KEYGENEJB (KEYNAME,KEYVAL) VALUES ('order', 0); + +CREATE TABLE ACCOUNTEJB + (CREATIONDATE TIMESTAMP, + OPENBALANCE DECIMAL(14, 2), + LOGOUTCOUNT INTEGER NOT NULL, + BALANCE DECIMAL(14, 2), + ACCOUNTID INTEGER NOT NULL, + LASTLOGIN TIMESTAMP, + LOGINCOUNT INTEGER NOT NULL, + PROFILE_USERID VARCHAR(250)) IN "ACCOUNTE_TS" INDEX IN "ACCOUNTE_TS" PARTITION BY RANGE("ACCOUNTID") + (PART "PART0" STARTING(0) ENDING(4999) IN "ACCOUNTE_TS" INDEX IN "ACCOUNT_ITS1", + PART "PART1" ENDING(9999) IN "ACCOUNTE_TS" INDEX IN "ACCOUNT_ITS2", + PART "PART2" ENDING(14999) IN "ACCOUNTE_TS" INDEX IN "ACCOUNT_ITS3", + PART "PART3" ENDING(19999) IN "ACCOUNTE_TS" INDEX IN "ACCOUNT_ITS4", + PART "PART4" ENDING(24999) IN "ACCOUNTE_TS" INDEX IN "ACCOUNT_ITS5", + PART "PART5" ENDING(300001) IN "ACCOUNTE_TS" INDEX IN "ACCOUNT_ITS6", + PART "PART6" ENDING(2147483646) IN "ACCOUNTE_TS" INDEX IN "ACCOUNT_ITS6"); + +ALTER TABLE ACCOUNTEJB + ADD CONSTRAINT PK_ACCOUNTEJB PRIMARY KEY (ACCOUNTID); + +CREATE TABLE ORDEREJB + (ORDERFEE DECIMAL(14, 2), + COMPLETIONDATE TIMESTAMP, + ORDERTYPE VARCHAR(250), + ORDERSTATUS VARCHAR(250), + PRICE DECIMAL(14, 2), + QUANTITY DOUBLE NOT NULL, + OPENDATE TIMESTAMP, + ORDERID INTEGER NOT NULL, + ACCOUNT_ACCOUNTID INTEGER, + QUOTE_SYMBOL VARCHAR(250), + HOLDING_HOLDINGID INTEGER) IN "ORDER_TS" INDEX IN "ORDER_TS"; + +ALTER TABLE ORDEREJB + ADD CONSTRAINT PK_ORDEREJB PRIMARY KEY (ORDERID); + +ALTER TABLE ORDEREJB APPEND ON; + +ALTER TABLE HOLDINGEJB VOLATILE; +ALTER TABLE ACCOUNTPROFILEEJB VOLATILE; +ALTER TABLE QUOTEEJB VOLATILE; +ALTER TABLE KEYGENEJB VOLATILE; +ALTER TABLE ACCOUNTEJB VOLATILE; +ALTER TABLE ORDEREJB VOLATILE; + +CREATE INDEX ACCOUNT_USERID ON ACCOUNTEJB(PROFILE_USERID); +CREATE INDEX HOLDING_ACCOUNTID ON HOLDINGEJB(ACCOUNT_ACCOUNTID); +CREATE INDEX ORDER_ACCOUNTID ON ORDEREJB(ACCOUNT_ACCOUNTID); +CREATE INDEX ORDER_HOLDINGID ON ORDEREJB(HOLDING_HOLDINGID); +CREATE INDEX CLOSED_ORDERS ON ORDEREJB(ACCOUNT_ACCOUNTID,ORDERSTATUS); diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/dbscripts/derby/Table.ddl b/src/test/resources/test-applications/daytrader8/src/main/webapp/dbscripts/derby/Table.ddl new file mode 100644 index 00000000..08ac681f --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/webapp/dbscripts/derby/Table.ddl @@ -0,0 +1,104 @@ +## (C) Copyright IBM Corporation 2015. +## +## Licensed under the Apache License, Version 2.0 (the "License"); +## you may not use this file except in compliance with the License. +## You may obtain a copy of the License at +## +## http://www.apache.org/licenses/LICENSE-2.0 +## +## Unless required by applicable law or agreed to in writing, software +## distributed under the License is distributed on an "AS IS" BASIS, +## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +## See the License for the specific language governing permissions and +## limitations under the License. + +# Each SQL statement in this file should terminate with a semicolon (;) +# Lines starting with the pound character (#) are considered as comments +DROP TABLE HOLDINGEJB; +DROP TABLE ACCOUNTPROFILEEJB; +DROP TABLE QUOTEEJB; +DROP TABLE KEYGENEJB; +DROP TABLE ACCOUNTEJB; +DROP TABLE ORDEREJB; + +CREATE TABLE HOLDINGEJB + (PURCHASEPRICE DECIMAL(14, 2), + HOLDINGID INTEGER NOT NULL, + QUANTITY DOUBLE NOT NULL, + PURCHASEDATE TIMESTAMP, + ACCOUNT_ACCOUNTID INTEGER, + QUOTE_SYMBOL VARCHAR(250)); + +ALTER TABLE HOLDINGEJB + ADD CONSTRAINT PK_HOLDINGEJB PRIMARY KEY (HOLDINGID); + +CREATE TABLE ACCOUNTPROFILEEJB + (ADDRESS VARCHAR(250), + PASSWD VARCHAR(250), + USERID VARCHAR(250) NOT NULL, + EMAIL VARCHAR(250), + CREDITCARD VARCHAR(250), + FULLNAME VARCHAR(250)); + +ALTER TABLE ACCOUNTPROFILEEJB + ADD CONSTRAINT PK_ACCOUNTPROFILE2 PRIMARY KEY (USERID); + +CREATE TABLE QUOTEEJB + (LOW DECIMAL(14, 2), + OPEN1 DECIMAL(14, 2), + VOLUME DOUBLE NOT NULL, + PRICE DECIMAL(14, 2), + HIGH DECIMAL(14, 2), + COMPANYNAME VARCHAR(250), + SYMBOL VARCHAR(250) NOT NULL, + CHANGE1 DOUBLE NOT NULL); + +ALTER TABLE QUOTEEJB + ADD CONSTRAINT PK_QUOTEEJB PRIMARY KEY (SYMBOL); + +CREATE TABLE KEYGENEJB + (KEYVAL INTEGER NOT NULL, + KEYNAME VARCHAR(250) NOT NULL); + +ALTER TABLE KEYGENEJB + ADD CONSTRAINT PK_KEYGENEJB PRIMARY KEY (KEYNAME); + +INSERT INTO KEYGENEJB (KEYNAME,KEYVAL) VALUES ('account', 0); +INSERT INTO KEYGENEJB (KEYNAME,KEYVAL) VALUES ('holding', 0); +INSERT INTO KEYGENEJB (KEYNAME,KEYVAL) VALUES ('order', 0); + +CREATE TABLE ACCOUNTEJB + (CREATIONDATE TIMESTAMP, + OPENBALANCE DECIMAL(14, 2), + LOGOUTCOUNT INTEGER NOT NULL, + BALANCE DECIMAL(14, 2), + ACCOUNTID INTEGER NOT NULL, + LASTLOGIN TIMESTAMP, + LOGINCOUNT INTEGER NOT NULL, + PROFILE_USERID VARCHAR(250)); + +ALTER TABLE ACCOUNTEJB + ADD CONSTRAINT PK_ACCOUNTEJB PRIMARY KEY (ACCOUNTID); + +CREATE TABLE ORDEREJB + (ORDERFEE DECIMAL(14, 2), + COMPLETIONDATE TIMESTAMP, + ORDERTYPE VARCHAR(250), + ORDERSTATUS VARCHAR(250), + PRICE DECIMAL(14, 2), + QUANTITY DOUBLE NOT NULL, + OPENDATE TIMESTAMP, + ORDERID INTEGER NOT NULL, + ACCOUNT_ACCOUNTID INTEGER, + QUOTE_SYMBOL VARCHAR(250), + HOLDING_HOLDINGID INTEGER); + +ALTER TABLE ORDEREJB + ADD CONSTRAINT PK_ORDEREJB PRIMARY KEY (ORDERID); + +CREATE INDEX ACCOUNT_USERID ON ACCOUNTEJB(PROFILE_USERID); +CREATE INDEX HOLDING_ACCOUNTID ON HOLDINGEJB(ACCOUNT_ACCOUNTID); +CREATE INDEX ORDER_ACCOUNTID ON ORDEREJB(ACCOUNT_ACCOUNTID); +CREATE INDEX ORDER_HOLDINGID ON ORDEREJB(HOLDING_HOLDINGID); +CREATE INDEX CLOSED_ORDERS ON ORDEREJB(ACCOUNT_ACCOUNTID,ORDERSTATUS); + diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/dbscripts/oracle/Table.ddl b/src/test/resources/test-applications/daytrader8/src/main/webapp/dbscripts/oracle/Table.ddl new file mode 100644 index 00000000..3fa33c27 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/webapp/dbscripts/oracle/Table.ddl @@ -0,0 +1,103 @@ +## (C) Copyright IBM Corporation 2015. +## +## Licensed under the Apache License, Version 2.0 (the "License"); +## you may not use this file except in compliance with the License. +## You may obtain a copy of the License at +## +## http://www.apache.org/licenses/LICENSE-2.0 +## +## Unless required by applicable law or agreed to in writing, software +## distributed under the License is distributed on an "AS IS" BASIS, +## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +## See the License for the specific language governing permissions and +## limitations under the License. + +# Each SQL statement in this file should terminate with a semicolon (;) +# Lines starting with the pound character (#) are considered as comments +DROP TABLE HOLDINGEJB cascade constraints; +DROP TABLE ACCOUNTPROFILEEJB cascade constraints; +DROP TABLE QUOTEEJB cascade constraints; +DROP TABLE KEYGENEJB cascade constraints; +DROP TABLE ACCOUNTEJB cascade constraints; +DROP TABLE ORDEREJB cascade constraints; + +CREATE TABLE HOLDINGEJB + (PURCHASEPRICE DECIMAL(14, 2) NULL, + HOLDINGID INTEGER NOT NULL, + QUANTITY NUMBER NOT NULL, + PURCHASEDATE DATE NULL, + ACCOUNT_ACCOUNTID INTEGER NULL, + QUOTE_SYMBOL VARCHAR2(250) NULL); + +ALTER TABLE HOLDINGEJB + ADD CONSTRAINT PK_HOLDINGEJB PRIMARY KEY (HOLDINGID); + +CREATE TABLE ACCOUNTPROFILEEJB + (ADDRESS VARCHAR2(250) NULL, + PASSWD VARCHAR2(250) NULL, + USERID VARCHAR2(250) NOT NULL, + EMAIL VARCHAR2(250) NULL, + CREDITCARD VARCHAR2(250) NULL, + FULLNAME VARCHAR2(250) NULL); + +ALTER TABLE ACCOUNTPROFILEEJB + ADD CONSTRAINT PK_ACCOUNTPROFILEEJB PRIMARY KEY (USERID); + +CREATE TABLE QUOTEEJB + (LOW DECIMAL(14, 2) NULL, + OPEN1 DECIMAL(14, 2) NULL, + VOLUME NUMBER NOT NULL, + PRICE DECIMAL(14, 2) NULL, + HIGH DECIMAL(14, 2) NULL, + COMPANYNAME VARCHAR2(250) NULL, + SYMBOL VARCHAR2(250) NOT NULL, + CHANGE1 NUMBER NOT NULL); + +ALTER TABLE QUOTEEJB + ADD CONSTRAINT PK_QUOTEEJB PRIMARY KEY (SYMBOL); + +CREATE TABLE KEYGENEJB + (KEYVAL INTEGER NOT NULL, + KEYNAME VARCHAR2(250) NOT NULL); + +ALTER TABLE KEYGENEJB + ADD CONSTRAINT PK_KEYGENEJB PRIMARY KEY (KEYNAME); + +INSERT INTO KEYGENEJB (KEYNAME,KEYVAL) VALUES ('account', 0); +INSERT INTO KEYGENEJB (KEYNAME,KEYVAL) VALUES ('holding', 0); +INSERT INTO KEYGENEJB (KEYNAME,KEYVAL) VALUES ('order', 0); + +CREATE TABLE ACCOUNTEJB + (CREATIONDATE DATE NULL, + OPENBALANCE DECIMAL(14, 2) NULL, + LOGOUTCOUNT INTEGER NOT NULL, + BALANCE DECIMAL(14, 2) NULL, + ACCOUNTID INTEGER NOT NULL, + LASTLOGIN DATE NULL, + LOGINCOUNT INTEGER NOT NULL, + PROFILE_USERID VARCHAR2(250) NULL); + +ALTER TABLE ACCOUNTEJB + ADD CONSTRAINT PK_ACCOUNTEJB PRIMARY KEY (ACCOUNTID); + +CREATE TABLE ORDEREJB + (ORDERFEE DECIMAL(14, 2) NULL, + COMPLETIONDATE DATE NULL, + ORDERTYPE VARCHAR2(250) NULL, + ORDERSTATUS VARCHAR2(250) NULL, + PRICE DECIMAL(14, 2) NULL, + QUANTITY NUMBER NOT NULL, + OPENDATE DATE NULL, + ORDERID INTEGER NOT NULL, + ACCOUNT_ACCOUNTID INTEGER NULL, + QUOTE_SYMBOL VARCHAR2(250) NULL, + HOLDING_HOLDINGID INTEGER NULL); + +ALTER TABLE ORDEREJB + ADD CONSTRAINT PK_ORDEREJB PRIMARY KEY (ORDERID); + +CREATE INDEX ACCOUNT_USERID ON ACCOUNTEJB(PROFILE_USERID); +CREATE INDEX HOLDING_ACCOUNTID ON HOLDINGEJB(ACCOUNT_ACCOUNTID); +CREATE INDEX ORDER_ACCOUNTID ON ORDEREJB(ACCOUNT_ACCOUNTID); +CREATE INDEX ORDER_HOLDINGID ON ORDEREJB(HOLDING_HOLDINGID); +CREATE INDEX CLOSED_ORDERS ON ORDEREJB(ACCOUNT_ACCOUNTID,ORDERSTATUS); diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/docs/benchmarking.html b/src/test/resources/test-applications/daytrader8/src/main/webapp/docs/benchmarking.html new file mode 100644 index 00000000..0a7cb9b4 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/webapp/docs/benchmarking.html @@ -0,0 +1,67 @@ + + + + + + +Benchmarking Details + + + +
    + + + + + + +
    +

    Benchmarking

    +
    +
    +

    DayTrader provides two servlets to create a workload for benchmarking: TradeApp servlet and TradeScenario servlet. +In either case, the load generation tool used to drive the Trade workload must provide cookie support to handle +HTTP sessions.

    +

    TradeApp servlet provides the standard web interface and +can be accessed with the Go Trade! link. Driving benchmark load using this +interface requires a sophisticated web load +generator that is capable of filling HTML +forms and posting dynamic data.

    +

    TradeScenario servlet emulates a population of web users by generating +a specific Trade operation for a randomly +chosen user on each access to the URL. Test +this servlet by clicking Trade Scenario and hit "Reload" on your browser to step through a Trade Scenario. +To benchmark using this URL aim your favorite web load generator at the +Trade Scenario URL and fire away.

    +

    There is a drawback to using the Trade Scenario +servlet to drive the workload versus using a series of more complicated +load scripts. As previously mentioned, the scenario +servlet is responsible for managing clients and emulating user +operations by dispatching simple client requests to complex Trade +actions. This causes the application server to spend a large percentage +of time performing work that would typically be handled by a client or +a more complex load driver. Consequently, performance numbers are +artificially deflated when using Trade Scenario servlet as compared to +driving the workload directly.

    + + +

    Web Primitive Benchmarking

    +

    A set of automated Web Primitives is also provided. The web primitives leverage the DayTrader infrastructure to test specific features of the web application development environment. This provides basic workloads for servlets, JSPs, EJBs, MDBs and more. The Web Primitives are installed automatically with the daytrader configuration archive.
    +

    +
    + + diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/docs/documentation.html b/src/test/resources/test-applications/daytrader8/src/main/webapp/docs/documentation.html new file mode 100644 index 00000000..be31be9f --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/webapp/docs/documentation.html @@ -0,0 +1,67 @@ + + + + + + + +Technical Documentation + + + +
    + + + + + + + +
    +

    Technical Documentation

    +
    +
    +
    +

    Documents below provide documentation on Trade application design, runtime +characteristics and FAQs.

    +
    + + + + + + + + + + + + + + + + + + + + +
    Trade Technical OverviewProvides an overview of the Trade application design, configuration, and usage
    Trade UML DiagramsUML diagrams showing application architecture
    FAQFrequently Asked Questions
    Runtime and Database
    + Usage Characteristics
    Details runtime characteristics and database operations
    +
    +
    + + diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/docs/glossary.html b/src/test/resources/test-applications/daytrader8/src/main/webapp/docs/glossary.html new file mode 100644 index 00000000..1c9c5e1d --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/webapp/docs/glossary.html @@ -0,0 +1,98 @@ + + + + + + + +Technical Documentation + + + +
    + + + + + + + +
    +

    Trade Glossary and Terms

    +
    +
    +
    +
      +
    • account ID - A unique Integer based key. Each user is assigned an account ID at account creation time.
    • +
    • account Created - The time and date the users account was first created.
    • +
    • cash balance - The current cash balance in the users account. This does not include current stock holdings.
    • +
    • company - The full company name for an individual stock.
      +
    • +
    • current gain/loss - The total gain or loss of this account, computed by substracting the current sum of cash/holdings minus the opening account balance.
    • +
    • current price - The current trading price for a given stock symbol.
      +
    • + +
    • gain/loss - The current gain or loss of an individual stock holding, computed as (current market value - holding basis).
      +
    • +
    • last login - The date and time this user last logged in to Trade.
    • +
    • market value - The current total value of a stock holding, computed as (quantity * current price).
      +
    • + + +
    • number of holdings - The total number of stocks currently owned by this account.
    • +
    • open price - The price of a given stock at the open of the trading session.
      +
    • +
    • opening balance - The initial cash balance in this account when it was opened.
    • +
    • order id - A unique Integer based key. Each order is assigned an order ID at order creation time.
    • +
    • order status - orders are opened, processed, closed and completed. Order status shows the current stat for this order.
    • +
    • price range - The low and high prices for this stock during the current trading session
      +
    • +
    • purchase date - The date and time the a stock was purchased.
    • +
    • purchase price - The price used when purchasing the stock.
    • +
    • purchase basis - The total cost to purchase this holding. This is computed as (quantity * purchase price).
      +
    • + +
    • quantity - The number of stock shares in the order or user holding.
      +
    • + +
    • session created - An HTTP session is created for each user at during login. Session created shows the time and day when the session was created.
    • +
    • sum of cash/holdings - The total current value of this account. This is the sum of the cash balance along with the value of current stock holdings.
    • +
    • symbol - The symbol for a Trade stock.
      +
    • +
    • total logins - The total number of logins performed by this user since the last Trade Reset.
    • +
    • total logouts - The total number of logouts performed by this user since the last Trade Reset.
      +
    • + +
    • total of holdings - The current total value of all stock holdings in this account given the current valuation of each stock held.
    • +
    • Top gainers - The list of stock gaining the most in price during the current trading session.
    • +
    • Top losers - The list of stock falling the most in price during the current trading session.
      +
    • +
    • Trade Stock Index (TSIA) - A computed index of the top 20 stocks in Trade.
    • +
    • Trading Volume - The total number of shares traded for all stocks during this trading session.
      +
    • +
    • txn fee - The fee charged by the brokerage to process this order.
    • +
    • type - The order type (buy or sell).
      +
    • + +
    • user ID - The unique user ID for the account chosen by the user at account registration.
    • +
    • volume - The total number of shares traded for this stock.
    • + +
    + +
    + + diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/docs/rtCharacterisitics.html b/src/test/resources/test-applications/daytrader8/src/main/webapp/docs/rtCharacterisitics.html new file mode 100644 index 00000000..66132b6e --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/webapp/docs/rtCharacterisitics.html @@ -0,0 +1,158 @@ + + + + + + + +Trade Runtime and Database Usage Characteristics + + + +
    + + + + + + + +
    Trade Runtime and Database Usage Characteristics
    +

    The table below details each of the high level user operations in the Trade +application.
    +

    +
      +
    • Description - a short description of the user operation +
    • Complexity - the J2EE components invoked to complete the operation +
    • HTTP Session - operations on HTTP Session objects +
    • DB Activity - Create, Read, RC Read Collection, Update, and Delete operations on database tables +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Trade ActionDescriptionComplexityHTTP SessionDB Activity
    + (C, R, U, D)
    LoginUser sign in, session creation, market summaryServlet, JSP,
    + Session EJB
    + CMP Beans Read, Update, Collections
    Create, UpdateAccount: R, U
    + AccountProfile: R
    +
    Quote: RC *3
    LogoutUse sign-off, session destroyServlet, JSP,
    + Session EJB
    + CMP Bean Read, Update
    Read, DestroyAccount: R, U
    + AccountProfile: R
    BuyQuote followed buy a security purchaseServlet, JSP,
    + Session EJB
    + Message Driven Beans (Queue and Pub/Sub)
    + Multi CMP Read/Update
    ReadQuote: R
    + Account: R, U
    + Holding: C, R, U
    Orders: C, R, U +
    SellPortfolio followed by the sell of a holdingServlet, JSP,
    + Session EJB
    + Message Driven Beans (Queue and Pub/Sub)
    Multi CMP Read/Update
    ReadQuote: R
    + Account: R, U
    + Holding: D, R
    Orders: R, U
    RegisterCreate a new user profile and accountServlet, JSP,
    + Session EJB
    + CMP Bean Creates
    Create, UpdateAccount: C, R
    + AccountProfile: C
    HomePersonalized home page including current market conditions in a detailed market summaryServlet, JSP,
    + Session EJB
    + CMP Bean Read, Collections
    ReadAccount: R
    AccountProfile: R
    Quote: RC *3
    AccountReview current user account and profile information along with recent ordersServlet, JSP,
    + Session EJB
    + CMP Bean Read, Collections
    ReadAccount: R
    AccountProfile: R
    Orders: RC
    Account UpdateAccount followed by user profile update Servlet, JSP,
    + Session EJB
    + CMP Bean Read/Update, Collections
    ReadAccount: R
    AccountProfile: R, U
    Orders: RCQuote: RC
    PortfolioView users current security holdingsServlet, JSP,
    + Session EJB
    + CMP Bean Read, Collections
    ReadHolding: RC
    + Quote: RC
    QuotesView an arbirtray list of current security quotesServlet, JSP
    + Cached CMP Bean Read, Collections
    ReadQuote: RC
    +
    + + diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/docs/tradeFAQ.html b/src/test/resources/test-applications/daytrader8/src/main/webapp/docs/tradeFAQ.html new file mode 100644 index 00000000..f10e895c --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/webapp/docs/tradeFAQ.html @@ -0,0 +1,190 @@ + + + + + + +Frequently Asked Questions + + + +
    + + + + + + + +
    +

    Frequently Asked Questions

    +
    + +

    The Apache Software Foundation® DayTrader Performance Benchmark Sample +provides a suite of workloads for characterizing performance of J2EE 1.4 Application +Servers. The workloads consist of an end-to-end Web application and a full set of Web +primitives. The applications are a collection of JavaTM classes, Java servlets, +Java ServerPagesTM (JSPTM) files and Enterprise JavaBeansTM (EJBTM) built to open Java 2 Platform, Enterprise Edition (J2EETM) APIs. Together, the Trade application and Web primitives provide versatile and portable test cases that are designed to measure aspects +of scalability and performance.


    + +

    Application Design

    + +

    What is DayTrader?

    +

    DayTrader is an end-to-end Web application that is modeled after an on-line stock brokerage. +DayTrader leverages J2EE components such as servlets, JSP files, enterprise beans, +message-driven beans (MDBs) and Java database connectivity (JDBCTM) to +provide a set of user services such as login/logout, stock quotes, buy, +sell, account details, and so on through standards-based HTTP and Web services protocols.

    + +

    What are Web Primitives?

    +

    The Web primitives leverage the DayTrader infrastructure to test specific features +of the Application Servers implementing the J2EE 1.4 programming model. A description of each of the Web +primitives is provided on the main web primitive +page.

    + + +

    What software is required to run DayTrader?

    +
      +
    • Any J2EE 1.4 Compliant Application Server
    • +
    • A database that has a suitable JDBC driver for both XA and non-XA connectivity.
    • +
    + +

    What are the most common configuration scenarios?

      +
    • Single server with a remote database - The DayTrader application runs on a stand alone WebSphere Application Server instance. The required database software and the associated Trade database are located on a different system from the Application Server. The Application Server system must have the necessary database client software to connect to the remote database.
    • +
    • Single server with a local database - Same as the previous scenario; however, the required database software and the + associated DayTrader database are located on the same system as the Application Server.
    • +
    + + +
    +

    Run-time Configuration

    + +

    What does the ResetDayTrader link do?

    +

    The ResetDayTrader link on the configuration page must be clicked between DayTrader runs. +This link sets the database to a consistent size by removing all the newly registered users created during +a DayTrader run. The reset also sets all outstanding orders to a consistent state. Resetting the database +to a consistent size ensures repeatable throughput on subsequent DayTrader runs.

    + +

    How are the DayTrader configuration parameters modified?

    +

    The Trade configuration page provides a dynamic mechanism to set +the run-time configuration for a DayTrader run. These settings control the application +run-time characteristics such as the run-time mode, the order processing mode, and other run-time +variations supported in DayTrader. All settings are reset to defaults when the DayTrader application +server is restarted.

    + +

    Can you make configuration changes permanent?

    +

    Yes. Normally, Trade configuration parameters return to defaults whenever the Trade application +server is restarted. Settings can be made permanent by setting the configuration values in the +servlet init parameters of the TradeApp servlet and the TradeScenario servlet. Modify the +servlet init parameters in the web.xml file of the Trade Web application to change these parameters.

    + +

    What are the run-time modes?

    +

    DayTrader provides two server implementations of the emulated DayTrader brokerage services.

    +
      +
    • EJB - Database access uses EJB 2.1 technology to drive transactional trading operations.
    • +
    • Direct - This mode uses database and messaging access through direct JDBC and JMS code.
    • +
    + +

    What are the order processing modes?

    +

    DayTrader provides an asynchronous order processing mode through messaging with MDBs. The order +processing mode determines the mode for completing stock purchase and sell operations. Synchronous +mode completes the order immediately. Asynchronous mode uses MDB and JMS to queue the order to a +TradeBroker agent to complete the order. Asychronous_2-Phase performs a two-phase commit over the EJB +database and messaging transactions.

    +
      +
    • Synchronous - Orders are completed immediately by the DayTrader session enterprise bean and entity enterprise beans.
    • +
    • Asynchronous 2-phase - Orders are queued to the TradeBrokerMDB for asynchronous processing.
    • +
    + +

    What are the access modes?

    +

    DayTrader provides multiple access modes to the server-side brokerage services.

    +
      + +
    • Standard - Servlets access the Trade enterprise beans through the standard RMI protocol
    • +
    • WebServices - Servlets access DayTrader services through the Web services implementation in + the System Under Test (SUT). Each trading service is available as a standard Web service through the SOAP + Remote Procedure Call (RPC) protocol. Because DayTrader is wrapped to provide SOAP services, each DayTrader + operation (login, quote, buy, and son on) is available as a SOAP service.
    • + +
    + +

    What is the Primitive Iteration setting?

    +

    By default, the DayTrader primitives run one operation per Web request. Setting this value alters +the number of operations performed per client request. This is useful for reducing the amount of work +that is performed by the Web Container and for stressing other components within the application server. + +

    +
    +

    Benchmarking

    + +

    What is the TradeScenario servlet?

    +

    The TradeScenario servlet provides a simple mechanism to drive the DayTrader application. +The Trade database is initially populated with a set of fictitious users with names ranging +from uid:0 to uid:49 and a set of stocks ranging from s:0 to s:99. +The TradeScenario servlet emulates a population of Web users by generating a specific DayTrader operation for +a randomly chosen user on each access to the URL. To run the TradeScenario servlet use the single +TradeScenario URL (http://hostname/daytrader/scenario) with a load generation tool.

    + +

    Although TradeScenario servlet provides a simple mechanism for driving the DayTrader application, +there is a drawback to using this method versus using a series of load generation scripts +that drive the operations directly. This servlet consumes processing resources on the server +to manage incoming clients and dispatch these simple client requests to complex Trade actions. This +action artificially decreases server throughput because the server is emulating tasks that are normally + performed by a standard client or a more complex load generation tool.

    + +

    What is the typical procedure for collecting performance measurements with DayTrader? +

    When DayTrader is successfully installed on the application server and the supporting +database is populated, you can us the DayTrader application to collect performance measurements. +The following list provides the typical process for gathering performance measurements with DayTrader.

    +
      +
    1. Select the DayTrader run-time configuration parameters from the configuration + page (EJB, synchronous, and so on).
    2. +
    3. Reset the DayTrader run-time using the Reset DayTrader link.
    4. +
    5. Warm-up the application server JVMTM by applying load for a short period of time. The load generation tool + may access the TradeScenario servlet, + web primitives, or use custom scripts to drive the various operations of TradeApp servlet. To warm-up the + JVM, each code path within DayTrader must be processed enough times to esnure that the JIT compiler + has compiled and optimzed the application and server paths; generally, about 3000 iterations should do the trick. + Remember that the same code path is not necessarily run on each request unless primitives are being + run. Therefore, perform an adequate number of requests to stabilize the performance results.
    6. +
    7. Stop the load generation tool.
    8. +
    9. Reset the Trade run-time again
    10. +
    11. Restart the load generation tool and record measurements after the driver completes the requests.
    12. +
    13. Repeat steps 5 and 6 to obtain additional measurements.
    14. +
    + +

    Where did DayTrader come from? +

    DayTrader was originally an application designed by IBM to test their commercial Application Server. +The application was designed around common development patterns as well as to use the majority of the +J2EE programming model. The original author was Stan Cox where he developed Trade (the original name) +for J2EE 1.3. Since then Stan has evolved Trade and several other individuals have contributed to the project. +Christopher Blythe has been instrumental in stabilizing the long running capability of the benchmark and Andrew +Spyker introduced the Application Clients. The Application Clients (Streamer and WSAppClient) provide remote +capability to validate remote J2EE functionality and database consistency as well as provide a remote +WebServices client. Matt Hogstrom has used Trade extensively for performance analysis and brought Trade +to the Apache Software Foundation Geronimo Project. He has removed (hopefully) all WebSphere specific items +in the application and introduced additional functionality for gathering server compliance information +and low-level diagnostic information.

    +

    Where is DayTrader now? +

    David Hare developed DayTrader 3.0 internally at IBM. Daytrader 3.0 updated the Daytrader benchmark to +Java EE6 and added some jsf and jax-rs functionality. The Application Clients were removed. Daytrader 3.0 +was made public on IBMs WebSphere Performance page. Joe McClure is now adding functionality and improvements +for Java EE7.

    +
    + + + diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/docs/tradeFAQ.xhtml b/src/test/resources/test-applications/daytrader8/src/main/webapp/docs/tradeFAQ.xhtml new file mode 100644 index 00000000..0698074e --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/webapp/docs/tradeFAQ.xhtml @@ -0,0 +1,209 @@ + + + + + DayTrader + + + + +
    + + +
    +
    + + + + + + + + +
    +

    Frequently Asked Questions

    +
    + +

    The Apache Software Foundation® DayTrader Performance Benchmark Sample +provides a suite of workloads for characterizing performance of J2EE 1.4 Application +Servers. The workloads consist of an end-to-end Web application and a full set of Web +primitives. The applications are a collection of JavaTM classes, Java servlets, +Java ServerPagesTM (JSPTM) files and Enterprise JavaBeansTM (EJBTM) built to open Java 2 Platform, Enterprise Edition (J2EETM) APIs. Together, the Trade application and Web primitives provide versatile and portable test cases that are designed to measure aspects +of scalability and performance.



    + +

    Application Design

    +
    +What is DayTrader?
    +DayTrader is an end-to-end Web application that is modeled after an on-line stock brokerage. +DayTrader leverages J2EE components such as servlets, JSP files, enterprise beans, +message-driven beans (MDBs) and Java database connectivity (JDBCTM) to +provide a set of user services such as login/logout, stock quotes, buy, +sell, account details, and so on through standards-based HTTP and Web services protocols. +

    +What are Web Primitives?
    +The Web primitives leverage the DayTrader infrastructure to test specific features +of the Application Servers implementing the J2EE 1.4 programming model. A description of each of the Web +primitives is provided on the main web primitive +page.

    + + +What software is required to run DayTrader?
    +
      +
    • Any J2EE 1.4 Compliant Application Server
    • +
    • A database that has a suitable JDBC driver for both XA and non-XA connectivity.
    • +
    +

    +What are the most common configuration scenarios?
    +
      +
    • Single server with a remote database - The DayTrader application runs on a stand alone WebSphere Application Server instance. The required database software and the associated Trade database are located on a different system from the Application Server. The Application Server system must have the necessary database client software to connect to the remote database.
    • +
    • Single server with a local database - Same as the previous scenario; however, the required database software and the + associated DayTrader database are located on the same system as the Application Server.
    • +


    + +

    Run-time Configuration

    + +What does the ResetDayTrader link do?
    +The ResetDayTrader link on the configuration page must be clicked between DayTrader runs. +This link sets the database to a consistent size by removing all the newly registered users created during +a DayTrader run. The reset also sets all outstanding orders to a consistent state. Resetting the database +to a consistent size ensures repeatable throughput on subsequent DayTrader runs.

    + +How are the DayTrader configuration parameters modified?
    +The Trade configuration page provides a dynamic mechanism to set +the run-time configuration for a DayTrader run. These settings control the application +run-time characteristics such as the run-time mode, the order processing mode, and other run-time +variations supported in DayTrader. All settings are reset to defaults when the DayTrader application +server is restarted.

    + +Can you make configuration changes permanent?
    +Yes. Normally, Trade configuration parameters return to defaults whenever the Trade application +server is restarted. Settings can be made permanent by setting the configuration values in the +servlet init parameters of the TradeApp servlet and the TradeScenario servlet. Modify the +servlet init parameters in the web.xml file of the Trade Web application to change these parameters.

    + +What are the run-time modes?
    +DayTrader provides two server implementations of the emulated DayTrader brokerage services.
    +
      +
    • EJB - Database access uses EJB 2.1 technology to drive transactional trading operations.
    • +
    • Direct - This mode uses database and messaging access through direct JDBC and JMS code.
    • +


    + +What are the order processing modes?
    +DayTrader provides an asynchronous order processing mode through messaging with MDBs. The order +processing mode determines the mode for completing stock purchase and sell operations. Synchronous +mode completes the order immediately. Asynchronous mode uses MDB and JMS to queue the order to a +TradeBroker agent to complete the order. Asychronous_2-Phase performs a two-phase commit over the EJB +database and messaging transactions.
    +
      +
    • Synchronous - Orders are completed immediately by the DayTrader session enterprise bean and entity enterprise beans.
    • +
    • Asynchronous 2-phase - Orders are queued to the TradeBrokerMDB for asynchronous processing.
    • +


    + +What are the access modes?
    +DayTrader provides multiple access modes to the server-side brokerage services.
    +
      + +
    • Standard - Servlets access the Trade enterprise beans through the standard RMI protocol
    • +
    • WebServices - Servlets access DayTrader services through the Web services implementation in + the System Under Test (SUT). Each trading service is available as a standard Web service through the SOAP + Remote Procedure Call (RPC) protocol. Because DayTrader is wrapped to provide SOAP services, each DayTrader + operation (login, quote, buy, and son on) is available as a SOAP service.
    • + +


    + +What is the Primitive Iteration setting?
    +By default, the DayTrader primitives run one operation per Web request. Setting this value alters +the number of operations performed per client request. This is useful for reducing the amount of work +that is performed by the Web Container and for stressing other components within the application server.

    + +

    Benchmarking


    + +What is the TradeScenario servlet?
    +The TradeScenario servlet provides a simple mechanism to drive the DayTrader application. +The Trade database is initially populated with a set of fictitious users with names ranging +from uid:0 to uid:49 and a set of stocks ranging from s:0 to s:99. +The TradeScenario servlet emulates a population of Web users by generating a specific DayTrader operation for +a randomly chosen user on each access to the URL. To run the TradeScenario servlet use the single +TradeScenario URL (http://hostname/daytrader/scenario) with a load generation tool.
    + +Although TradeScenario servlet provides a simple mechanism for driving the DayTrader application, +there is a drawback to using this method versus using a series of load generation scripts +that drive the operations directly. This servlet consumes processing resources on the server +to manage incoming clients and dispatch these simple client requests to complex Trade actions. This +action artificially decreases server throughput because the server is emulating tasks that are normally + performed by a standard client or a more complex load generation tool.

    + +What is the typical procedure for collecting performance measurements with DayTrader?
    +When DayTrader is successfully installed on the application server and the supporting +database is populated, you can us the DayTrader application to collect performance measurements. +The following list provides the typical process for gathering performance measurements with DayTrader.
    +
      +
    1. Select the DayTrader run-time configuration parameters from the configuration + page (EJB, synchronous, and so on).
    2. +
    3. Reset the DayTrader run-time using the Reset DayTrader link.
    4. +
    5. Warm-up the application server JVMTM by applying load for a short period of time. The load generation tool + may access the TradeScenario servlet, + web primitives, or use custom scripts to drive the various operations of TradeApp servlet. To warm-up the + JVM, each code path within DayTrader must be processed enough times to esnure that the JIT compiler + has compiled and optimzed the application and server paths; generally, about 3000 iterations should do the trick. + Remember that the same code path is not necessarily run on each request unless primitives are being + run. Therefore, perform an adequate number of requests to stabilize the performance results.
    6. +
    7. Stop the load generation tool.
    8. +
    9. Reset the Trade run-time again
    10. +
    11. Restart the load generation tool and record measurements after the driver completes the requests.
    12. +
    13. Repeat steps 5 and 6 to obtain additional measurements.
    14. +

    + +Where did DayTrader come from?
    +

    DayTrader was originally an application designed by IBM to test their commercial Application Server. +The application was designed around common development patterns as well as to use the majority of the +J2EE programming model. The original author was Stan Cox where he developed Trade (the original name) +for J2EE 1.3. Since then Stan has evolved Trade and several other individuals have contributed to the project. +Christopher Blythe has been instrumental in stabilizing the long running capability of the benchmark and Andrew +Spyker introduced the Application Clients. The Application Clients (Streamer and WSAppClient) provide remote +capability to validate remote J2EE functionality and database consistency as well as provide a remote +WebServices client. Matt Hogstrom has used Trade extensively for performance analysis and brought Trade +to the Apache Software Foundation Geronimo Project. He has removed (hopefully) all WebSphere specific items +in the application and introduced additional functionality for gathering server compliance information +and low-level diagnostic information.



    +Where is DayTrader now?
    +David Hare developed DayTrader 3.0 internally at IBM. Daytrader 3.0 updated the Daytrader benchmark to +Java EE6 and added some jsf and jax-rs functionality. The Application Clients were removed. Daytrader 3.0 +was made public on IBMs WebSphere Performance page. Joe McClure is now adding functionality and improvements +for Java EE7.

    +
    +
    + +
    + \ No newline at end of file diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/docs/tradeversion.html b/src/test/resources/test-applications/daytrader8/src/main/webapp/docs/tradeversion.html new file mode 100644 index 00000000..38be2eee --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/webapp/docs/tradeversion.html @@ -0,0 +1,24 @@ + + +DayTrader Version + +IBM WebSphere Application Server Samples - DayTrader 8 (Version 8.0.0) +
    Full EE 8 Spec Compliant +
    Date: 20180417 +
    Contact: jdmcclur@us.ibm.com + + diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/error.jsp b/src/test/resources/test-applications/daytrader8/src/main/webapp/error.jsp new file mode 100644 index 00000000..988ad2d9 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/webapp/error.jsp @@ -0,0 +1,122 @@ + + +<%@ page + import="java.io.StringWriter, + java.io.PrintWriter"%> + + + + + + + +
    DayTrader + ErrorDayTrader
    +
    + + + + + + + + + + + + + + + + + + + + + + +
    +
    +
    An Error has + occurred during DayTrader processing.
    The + stack trace detailing the error follows. +

    + Please consult the application server error + logs for further details. +

    <% + String message = null; + int status_code = -1; + String exception_info = null; + String url = null; + + try { + Exception theException = null; + Integer status = null; + + //these attribute names are specified by Servlet 2.2 + message = (String) request.getAttribute("javax.servlet.error.message"); + status = ((Integer) request.getAttribute("javax.servlet.error.status_code")); + theException = (Exception) request.getAttribute("javax.servlet.error.exception"); + url = (String) request.getAttribute("javax.servlet.error.request_uri"); + + // convert the stack trace to a string + StringWriter sw = new StringWriter(); + PrintWriter pw = new PrintWriter(sw); + theException.printStackTrace(pw); + pw.flush(); + pw.close(); + + if (message == null) { + message = "not available"; + } + + if (status == null) { + status_code = -1; + } else { + status_code = status.intValue(); + } + + exception_info = theException.toString(); + exception_info = exception_info + "
    " + sw.toString(); + sw.close(); + + } catch (Exception e) { + e.printStackTrace(); + } + + out.println("

    Processing request:" + url); + out.println("
    StatusCode: " + status_code); + out.println("
    Message:" + message); + out.println("
    Exception:" + exception_info); + %> +
    +
    +
    + + + + + + + +
    DayTrader + ErrorDayTrader
    diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/favicon.ico b/src/test/resources/test-applications/daytrader8/src/main/webapp/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..beacc1826a0500816af7c97b8dfb3a2f25d4deaa GIT binary patch literal 2404 zcmbVN4Nw$S96zN94a!mroIbX-sc_ia-TS_sE(h*NNYCiJ1}qxb+kJOz-rZii%V#qh zXpGv2m4l7;U6>AtAv0Qr26jk?s3;ObVDh12D2hZ`V%gi{yr@xgdNX_XK7Q~2@q54b zf2-0K&Wo8kYpOz_h)GSc*x)}Re^C+e*HXT^QK6XhO4_2eM?>~KZ=y+-A zNJ~r2_U)H1UD{`)^7Hfi%igW1s8Flb7cN}*sjAB5a*ejP@7dc}TU)zw<;w1&qG{8n z9sQwe{rdG|qoX@^?mRSO_Wu3*t2TUqqUg4zC2g6Rhi$fBy1L5B%FdlTcc!MMRcGE+ zzvp1Vvaz9|14&6u>DkS5bnOf?v};$>2cL9!JnfBvLr2=m%ggO{duR8LhdeYv)#T_Ri znLmGUaImeTbJxaAn<^_W_V#vGe$iXKeQ{=Hmpk`V`Q|fyCj)P;eVx=Fdu7GGjhmYv z#0ERNdwY8uzNqmhE$B#Dv?wF}NJnS?snY|4XHT9UJl=nz_4}iZ`&qt`&wGtpUrMP+R@*CV)ynh zcklVOzP|qa$Y_&V4G-eVl`Fr`vGl;+6kp0>QK7hfy8KO2Y9)+ggAhU^P14}wRI@Mu_iQKYbC5cGsxjmiUhEzXrY}c zTEZAvbnX+#;{_Bn-~kei6nNZTkt#5uLAw;}%hNcD1R>HA6PhSHL^7;th?y4vqE+fJ zhSU&<-l!yXghopyAS!~?emtCdRiiW2Q*K&r)rLWYza$5KGA0!D|%fT{E> zz%*Ke4x^n8C&sD)V4WmOXmsKI7M{tKbs+B_zY;9ZKpTIDr*~>twbp3BNR3gC=^Yv^ zW?)GNre}48+F+pdqy}7#=4pY0w~}^Gv?@o%LW?ZxAV`KFFq$BBn1)d6F^A4bVg$qJ zRa#mL)PzRXeo#(S3MayYE)3nKMc}1S&&?r01yM93-wYGV$dUjo8k**=!N*N`4(-p+ z0nq3TR5I>eV=Fw$Sx=W(?0iU)QoCt9Z)vrMHe{ z&Fb0KN1bW8vm`oU%}aCM+F5z|z2f4x<2FrxbY>)M>z>LSX@2OSe<)?$AJNg`fQsmg z-n=&bM-|a?$L6)~&q`l$A!FOCtCqyHJ!0pVf}Ll7E-6lI$a|zaz9y>k;t}JFWv}I@ zS4DSUdVbPYMe5ij>s>LCk&U%?-kFEZ}hHROB zPhe}whT+$&MISaSi|V>O_w$nex`*%o=8yHu5BL+-#KjuwvIYt-zE_+$vvTs{(wL{>ZYVEZ>cVCU1MHXTwMHWZ+qpvpSBFg8%Azhqlt)U)^^tYb|Nlz + + +daytrader2_matts_mods + + + + + + + + +
    + + + + +
    +
    + + + diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/header.html b/src/test/resources/test-applications/daytrader8/src/main/webapp/header.html new file mode 100644 index 00000000..c70149df --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/webapp/header.html @@ -0,0 +1,96 @@ + + + +DayTrader Header + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + + + diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/images/DayTraderHead_blue.gif b/src/test/resources/test-applications/daytrader8/src/main/webapp/images/DayTraderHead_blue.gif new file mode 100644 index 0000000000000000000000000000000000000000..497456420c5aebc2250035cae32764b585eff08e GIT binary patch literal 3908 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%0Ag+PabZ}@XR zSBg{khR~=7L|6!(D3uiXgl6c3htPaAseoNcl>uml@HdulXO=yPmiKr5gL)v1MOb}d zCyms%hC-K@Znyxin0}Hdhi-70n3;=jV0Bcbe&k2m~+y#0i6Ch@8YJeoH^892?r3SVmhW|TBc@trf8a`YI>$wx}|RVrf?dkayqAUTBmk;r+AvDdb+24 S+NXZ{r+^x$g6ar?0029a8aavp literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/images/DayTraderHead_red.gif b/src/test/resources/test-applications/daytrader8/src/main/webapp/images/DayTraderHead_red.gif new file mode 100644 index 0000000000000000000000000000000000000000..5f05eec832600626a88ad5adadbb1b32478ec92d GIT binary patch literal 3734 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 AEC2ui literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/images/Thumbs.db b/src/test/resources/test-applications/daytrader8/src/main/webapp/images/Thumbs.db new file mode 100644 index 0000000000000000000000000000000000000000..3b66be0e67aa8c8bf6f4aef3cc69195e16460c7d GIT binary patch literal 51200 zcmeF)2V4}%z9`^9qC`QE925|hBsqhLBnpyqP$cJ^8375BgMboMkQ^lEoFz%l8AS37 z5{CS0cGr7%&%3+p*>mnYzumX3pN&jUSJzC}zpJaOt3UM;&b}?6n1lSoBnm-=oSvPB zVEpX&DBx$LAEpZs$T{!>^7YfRv$G$634wqg|DOItpTG&&*7M-Yy9l5G=m7FN#RRYb zY~T`r1K6Uw7_NHCU6Cy2N-~> z06)M4Tm!BHHvndU1z-i(0Cs=_5Cu2^E`S^00eAsEKmd3E2m(TYFdzbm0W!cX;5Kjv zxC`6^!~qFF5|9F$G{T+`JVs8qyVu3f9%2cB@VF!b6bcD*qZO3E`dGf+jb-Om*1LZp*r1xd_5?r z$c55>ToU;m{wot2?&{JaYf}wepXQBgh!=kL4d3GmtUh7H}K51Kb6Wd?P5pV*W0c2@*1>694zyt6EpujT#`JE#70Vl8%oQNzx2b#wMnA_709t&MvM#&wc&;16~A1M!k%ViGB4t?p;di z`?U0o%&fwq;*!#`@`}pFrskH`w)T#X{R4wT!y}_(<8$*1i%XxEzpSjnx4-V}?(HKE z4w3mnfuR1Ft^dl|Kje!L`M&XbBu6g)_%y@_hroc59RE?GWOs38i(MbqJS?Cl@Jub6UBFd z*HF*KzI|_hX#Q>gy#(UvpJD&K2+{j{|NWs{{^|GMBfqv*QdgY_V~zRUPgmZk5iZe( ziKERI+d~7O`^NR(WHCKzVNUF++w6JX( zlk&*~YH;WoBpOP;G?pgFZ>nrEWGTecwHY~JmYg!&)Mxin%VCG7B$?`AsuqK;v2~YM zuZZ0lWHnz95pg83DvB20)M;gMk{XwIIR0SEVKK;_E{bW&Vzf&Q-W4YQ~BvlUw2&q#pwwv8=8i9X2~6~VLgngorN_G(aR?p?qYKu z(mO{dHZALV+~EzxQQUglIO~dK@D`W47q#dQS*IiT{MYS|F8RR?s_bZEddXHXh6Dt5 zvpyZu!<~HH@8;=z;V^Oat<9QOp?F>>&S1$krCdhv3f|&zr9qE6#-E+LSFQHseKEDr z{efM9JoYb&=p)_mRGpTNvxy-v5?1W0P zbknn^vM2e?7hdabGvU4Q@Y*U)OC{9uV7;#cdCc$15O;GW7xD>Bdxl#ZPx~I1L6W)o z#TCo-$!2%1#twc!>E`OU6foCkxl9NRD+q6E#LM9A_7P>O!F^|cdF7Vrm1wiUy z0&ThWNq7i>?3L*&RYSY{taQ=y+fOvzUKm+d8`;%=~)~H{iU-p9Q zw?s&NjO)sJ8-Us=D+V7gqHSd-%j3wqFSd~YJ$^{6da#}$@85)0D|MopBu7z3?)TDth#4~_fh6*Bg1Jk zl>Tdi(NT+>3hmg3Gl(nn7%S=w5}0ztOS>g^2Js?-!j7a&9Co5+V*cG|c z8)56C&>FE*H0d))i@Z41_9n_nJi&hY8KnM&7$Qro=<(^!83aMdbOs?2C${S>$J{d) zn@&E1oMSkH%xC7OYRdWv2rq|}->_t8pxqxLmhWX8B>26<%eUi4!=I-9^Y`)N$9mnL z{`diVdj`2oUbpu4)UfIyL6*F@t32IK2(mxHF4A*ll&I{xIrfV4E1Mfh}Pfr=f6h%dH)PTh)DX{yjLmWmu|y2 zl;{_gE=gV8qfVXlkz7X-)6e!PJ(DoXmYUd@hTI9Nc^!;etTA(S-+TI$p+{_9^L_Gh z+W3&%hS*-_E3J{!kNwaulm=&zXDg?~Py-XO9lSzNb+A8!V7H%wN{VTf2wy!#X)cDp zgPE0!XmUpVfQ%bSe6`AG%)J|3{Ie32k)p7}a6{TX6;N5ZHNk$2DF;hAVg|L5Hx{v{ zsObpBGsp)At9AV>k3`RQ`mY7cOz}&W6Q5l)%hr1-_cnT6N1%SES3?&kN=n|86TQOK z9p_zoUh|H=>u6b+U9ktH;SH|tdM?wcSE()nKY32_=Lx-IrB#f-FBsUIY`8scfX8{B zhQ}gjja=yUZL~|Mw9HWZ1^OeolPt*ZXEO}>dHD8y;I6qYMK4>VAb@u3O;~>oZT$>Y zi4~>^k%`3_?wlKZ6W7l-Qm@OrRRL@q%(2 zTx;47lbhR$YhYdTLxEq0TPItu)+ckxT-~bLK7-`83LMoUXbkpZcT+al*Tj9|+On9M zkL*8ab`euw828DXO*AD&{Xdl!j=eY#}nE9eXu3kF`6)v_XBY zz>3*%`rv5vn7Q4v|FqcS{fY61gRwQE`H{pqczt_*nsL0M^8&omE27-%6GhtyOU{OUytb;$AY<)^IHR)1b`U?~ z)JM5~k2Y`KJ%?r4<`sI2?&mB1A7lGZK`;N8+e4xA5(|VtH2W*)Xr9p#C+Vj{wByi? zN2HSP#*VGvOwZg2TrASHSsTjg%G4-!$g49_L!a~oC(Lr+3VRSS03lhboElATat-f+ z4w(0z-mN%;P+VgywToCa>eO+=b^-w-&rm3Kw0e(t3j`93ALE5tPSCuM_#u5F+ zbPdhBxEPkgqjYKuFPCgWzT}tDjBV-Y{uE;FH+>fI77KAAl~-fSP8*+zx3k0bBU>m@ zw@AO0e`)j+`eiTcliT{?rtD;hpu13P6W%21if!}b;iS)vE7LL!0%R;(OF0JTvV13c zyKF^-qd-8F9M>HV!W8I-nj~u=BefkA1UOL;A6vTYlR?l61MyjF1}qc?wi%_%fz@UC zi-tEi=CP}^ok6IQkBxH@c~v~FoI%9CP7|D9m|kPH`}MQvZ}BhkPtyK+;qUg>pRSAi z>Cc}}t`D+r=_=QR3LUVf_=$_(Biz{@Ds;LmqPCyYnNJkNoUxH7{NRID`z@)bF;m(v zR-Wm1E5V`u4%#wW)f^?;YV98zSbF-H+MjLe)q{r5n;bI&?XB3y!pxLyC$ZM@rwHS( zRl#;K%V8R>(Z;NrRs)A8qE9`qAu4#|YGp$*J9DNImKHc%2;mKEmoJA(9Vi_x2CK53 zLC%8)EHNr~m4WKZb9EQL&`<`7p{<-=sjL`u7d`ZmvlIS$Z}qL^TdcZD%sNHw*kigP z=qJIo(~~pEo^so<)JdXZ8)+O(uFY&Wy;@~qpLy{}%M)O8tE#oPQ$T4fVj4F2Jw9dV;_%g8ZNuEJte(x?RfZ#j4==IK#)m&srsun8(Wg1 zfH``GaJgb0G~R4?*NtVr506HPM4wV2N!hCDgv9)0ZfH@VA! zv*(B{_bP`4AvY)aqMA0vIkfEojMm#en_8tGM<|GrA)}=H_iZienD_1h${xxHY`h%wAmGS0@pi5F+)e+w3%2CRguQ9A| zN_)U5=kdelXld5$)?7u#VAHAg8M8s+4qSYP0z_w!wuTJ>N{$}P?rxcP$8JN#?e2C? zIfXMTwUh(HCPwl1J=l!5)aHfsFMeDq^G@YMO*+WMyL$`X-I5%z9_GD+`Z%+b=fKyJ z;;xfj_+ze%oGwpUto_ESi7F26J~o2y`?||R=O6N^^&gYJTUE6%Ghkfmo_tRwNBn;8 z#0B==-cyvFY+A1bEz`cK9eEA6N|O~W4PQL{0}xA$*y1Z)uwaR7k8^lS!&gX0?qGhO29GLp;|R zKSWYX%Jru*+!Zct{W3glcae@`$r@CqWbl8US*?6|lon1FR$B;FDn7W_j zF3*b?S0T!L5!DrbF8ewIjSqQ4DMEWesgK=$8R0g&=&i0_Da0d`!qA^;hsJt!<3Q5c znos}9gWI^PS&27>%lLY>wz)%vSU-QZ&xx<8c(UPU!JKZ88=W&S_(fP1j??N%{Q;IK zv%oSwwGR6rO8#=Pfy%laadb1;j!02p@@6`JUel~o=&o2mEkUyCAey3P{Mh4yn!wQs zk397Huegkptxg9)-ZKpexFbnlrZEs+b5#)zk7w&}PSQF_dCdi;kQSv#jPP`M znK(Jw@dW+^9isP`_Y=k3YTi}WPOE56NWR|{`}L#Ne>b;$JAMg(_K-hA{T<`qeEjkP z9|f}CfDf2I2YdlPz#j+zUI2kW5D*N60HFZ#J>g&;0Ym~(z)K(+hyh}OSHNo^4u}U5 zfJ7h(NCw^jZ-I9}3XlrC2hxCaAOpw*kZEOuc@B^Z2cQ5b1d4!Spadud%7Aj9 z0;mM40OWdVz`Pcy1L}bWpb=;Snt>Le6=(z60pxo=f_W#<1#|;FKriqK=mYwJ0RXw| z5SR}GBfuztyt+LOOaPO>6fh0U0JFdxFb^yMi@*}_8CV9s04u;Mum-FH8vrt$Eii`x za9|tw3hV&8z#gyi@v?F7QS>cCHh8 zbBl0La*o?|b4$=#L*~ppy@szig9y`KDa%^@6&E)2rq;?M~m`luSR^p*gsg zZjGuBEho%OFyg<-&h0N(Hz_qlbseuQJi#d4a!_8pzQD}N4kwCdtXxZvJ%$uB)cFh| zJd|}U74!945(-==WqwNbkl=!_>%+zj?=D@fmc$CZsrb_#+`?z)-%#>oNL&wg*h1q*=P5V8+0 zBK#TRFE#}GFV%j+|9fB1@4Sw@{(uISL4J=QEd3Bxe&;O^Z?FI=>W@na{NBR9^ZFmT z{t*V&8HVxWif{hVi}-gE`Hhz`K>p8z*KvUF&3_hHRvh`Efr;bakUlY34+-$S=~shg z$$$F%|3B`3wi7lkH=o}uhv(UU-h?!eV*DYSlxG8VAlb&ew6Z21IfImxIfwaX+pU|J zQ+pAJ2-eG*uZuhK?p%wJnvWofrwV@`iXyPUM3Ytvy1uYjq@AR)Ek;f=c?|1v(J`H9 zd8}<^9caDpo`;(%SX?*B{tAMsyQp|Ci=)VWi}xaI)A47J$fL0DsicDM>({1l@zV$F z&wqya`FH=fZ~apL^zARd-T%$|zx%%h6F5Rt*nOXRZS2Y25I=fbTv6Xk@@6kWQ=0+a zNtLL&Z;sC?bgFzD7HjzG%Uq_iugXG^R?iA6Z^faAxd^F%c$@CsC`9*>xG62JgEp6R zKX)4(Bh%rcRRTXt^M=PXFzuPjuO_O78XyodU%EW{1=iS1+#aE6Fso-H6 z+xHNR^A9zfHR=MYrLzxQ^WIwgd|k!%gR9u;I^;d~<)V3q%PdSiO#)s*)tueu)T(zG%>)RI^R)rshN& z!#4UUTnWu<)41X!U0B3q&Sw6)@Lk$H0dOVkQ4yr=St?4nM?n4!s87;0*m5urp3@y| zA$h^zYf)`b`ug^dZ*Qw8TjC4qj~8x=8Q~c&HwfmwjJ@QqHpq^?_AVR8Ku_)?fzEP* ztBuU6x@R&BHO{C;=h*ebK(%E07e0#2FqJyV$nnw5uE1w80$*;Tth%X+I2>sr6uKTf zh2s#Sb)(g4an{Am&TclsxF+E`E|`sCmrRpHK2_h%mQ1@g-3>&Hr%Bx>ZOnwCzpwY6O@!yHT0S~$mfVJI@eBea)kxv zMMxh?#2t4&P;a^=RyPZx0g#3p4s%=Nb#=!Dlv?2 zLMuWLM8gs&p)_oujC+el!{!VUI`rz4!@0#K#8&*cuExB5~ z?N+oJ=Bqj)dJSRs)>JUDd4x2wh0X=dPh>QD(7K!&vZ1Z}^UiJ=@9K)2Efv&xiF(&1 zx5Wfnq18&ekAJBO|qk5bt zywm0%5S~Fikp1&0J5wj8G75tzQ$h2+zE_Ge;hQgF^g^9DX@W}P=@FG) zYA|O>nP@#R(+W4IM0$$A$^b@Ij^I`wT6dJH%!SgM(l)PtZNtoU5U$jejj>@4>C?3z z!f)HcV@8KR_FCt3#h)KVvx!RZm}}1$I~}7b){^{1j()a6RrZrY5o6>so20*7$O56? zN}7aQp15OD+qB%kVnuZq%k!?^#DKN1kB$p?mkG?YQRXFNR~1|$#-pofOiOcQ?~grt zaMUNxm9!2nP1b-u7}J5*a0(L zGr-$W9FgzHS*d(saR;SWsBY(?I58gAABZ~tU7P+EfAGNh(4Qgx{MFhY{y#qdtU1zi zPHMCo-^h28qpnTl@zy#R-j?{NKd$C$fEH|vMW%Nf%^S}%VQe*gM&q^}l@ktCd*QXX zajD63oP6}x41~9_K-Y%qrg>W5Vhfpt{3e;Tnk$W~yZVD1b|QtsKAj;HVy}XabDG2M zNK=~)ueH|CO;PNAo;r9xu{_gt!W3v1@L63)(O>DnBjjp+x7%vWunNMeYI=(84D#J& z>Rb5<{gbrcf!iAYQtfyDYWd;(H?%)tgK&BQ_}=!X4zO$-*k6zn*S{hCOJF^u!1ty< z2$nVdsr`@p-;h2YSRcVZk^UxF)(iP2F!B5w(kBD!p#Z)&|BRr)UH_;2|B3G(-Ojr9 zu1;92@Lb@vH~;9nZ-)35zjXd2?Pt^w&A;QUJW4*x3$^I5|{@_jxyJXp=eU0jw3BxI-BNi2}S%p<< zea@|^Dl^VLPPz>a?t5upiyUVm&VvD8bsLkr!r+ zX=BsdX6SM}_(nliuU_}?Pgm~<%*H{&ex7^zU-ay};an|{)nW12dcJ=eXD;5UqSl+b z3D@aD50-9(pDc#8U^reZ%r6~1DVuwH?2i3zpoB_|KT&F+x(4rze>;^$kDXU9F-r0; z*7?ictFE-?SNBI0nv5`De%!Rian~M13Sy{zB5kU`^i@!Uw>oD?`Z+|s%gbK8R~kmy z6*wY){x#u8A*?d1%j%j;R%E^RA)z=zlmaSdGS2IHq%V{D+%qp6X0u_5-9L1jD{G#} z)vrH%*nO;PQqA#dDcKP>I9Sn!Y}Ik`DDHp~+0%c&&S!uW;qaa>6Wrk_DSc~T-8~)u zox;tEl@>>hux3_z6<>BsZZofW;<8Xe2a+!`hEE>_T@UJ0?(eJ0f-aHYB=k4(tx z6UV82GUxzmh^-cNs6)qTE+0YM2$6=F-B5G~HlBC?` z=cnH;$vajphT|S)RDGz8#Ho_H9I`Zs7JE)j>3O6yE|gzD$d6PcApgp@bvE?4k(9Np zNwX>M;$6|q$lZKfTkOZ&%fiq>B;l0kZ_5|++^ZPgqvr_ot4tm+&2b=uKPu8o|i-8rCLhr6_h97Fl}-BsnrHhO)>C zOTWi74BGl6J04g&8U0#?`rGlx0n`Wn6X&1EVKdGFU|0qS8h{R90GI$4a2~)0Z~$BY z55NZqfC~U2Km=R_hyfDd53g z8gL!B0WbqB04u--umd*%4uBKj0=NMlfEVBc_yGYx5D)@{0TDnHK&EpG%x?pCfV;pw zKpc<&BmpTv8n_S001tqNfGi*fJObna1wau{0+az2Kow8}km+cExh9|mXahQcE}#cI z2A%-=z*E2gFa(SMW55J31GnlsNixbL82)IYi%m5 zpr*LEqP#3*RNBn6Uux0HY3ll9m&+nlaH_<+R~oL{lzk%B2p#RTaT1U+rx{nORJ6D( zDH-6)?APkQVCBH7(L`4>8zGFnGQ&SU$|F!b{7VN!GL z`7i1POo`|gLnrMm-=8<-3+TIo*U$y1^y6r8}IMQalOx!om z(oe2@gD5!NO(>mO?Dd3Pn@X%g5qTSHqa3;V(FavWjpNWjc2u@!^UJEfaZIJDn3~m0(tAYI0S{CXejA{h>NU7DqEk6%~%Bi;ala9zK@Ouj$ES7|LhpI8yE& zOhxa7P^YpVrFe~3Zu!>I!Y!7AS$chlR;=_LSRF3i<6TQWFrBeyFE|>d$K*NMK?o9O zR7RVP<+F;Oh_Oc;u(F9c2P+wWYOJ_!VVICR4Ze1VQ=<_$!suQMk4>uD+%tOK%v0hm zgm|&;A(|R=mJ{l$Q#AQW^Ib~k<=f9+;1tY0oqamkT|t$S8X+Zc{RXkQ>+Ca|E#25M z6OH9{?6!9ZY!^0n!Z$L^#gR47aeLYrLmN7HYP9y7>JBbc3!Opq5Mn!Od49FeXNB2k zH~pO)KKuj`VVLdC&a>w+#`0JMFfBVzLx7^~lM|t~XiLAFk`AZVT#{*~ER# z$3tkg)?WI=!tFCRG2vrC`;w`6D2BmP`s1^OP&cnlbQ7Mi;3b7ZXFCmh5v4WL+h>sW z=xDW%j%5-iBsiusQ)dvgFYbD|;I@Fa#_lGw^P9FD!L)^ZmP4H;rFABsSms=~a9Su| zjq^`pjABSEF;L;ZONY()94qpL>@crw@E#7gwr*<1@Reor--1g49{ra`@ z(pPh^cvv_6=e6&A9$%C3V?H7$&&i*Qp1Y+-$i-~VabZ+11M`Gi1VbuxLiKB&f&iPv zn~+f4UY-hNs_k3lOxu_lxi?F%sig;+>rdL=v)w>DoR!(oF`%k-zBhacn{++$ILAaV zJh^$(rMV8zosT#B3ZH*&WQ!V*HDHf)Mu6iAV(L&B!)NL+vKA&9lcuAe(=u*Lu!Rd{$K8qVlpx2>K zhjOf}f5jVr>?#YV02R5-aMkCp6s5{Hcw-&MS|kacznRRu!(rvdPgY7nhE-4c3Uf$NT!jb;3?14 z>rm7M4kE1X_ZcNxSxh_e!X;qMh0ImBZyDySG0B-STFv@Hxd?buFyh^qbLGnYpix=w z`Rt(+#%GXi!-`PTnfcQ)%=+QsFu&k|JK~|rPmL+q*-spCNUyif)C`_%mc!Qa$Jysu zTN6ntSGOV{p(=juO%qqQ�azHWI{TsRb(4iil{O$ceFabFOm5XL>1AS$Jf#4M&>EF8d?I z_FltFU+<~0-BWERyGxxiYN4I-3?<|ujSp;1S0ABrs4d${*|G7oAZ}hrU1wOg4u{(= z(tpy3*4KI*({JEmh-I+|s$_{py;X_9ivpj7hzoQ(vxg(n`tvyPhH<^?u=w3bzBs3s z#Wr|_kknaAbHNXfFmY|0mU`KEQw{v1G_G13R>WYEC=fNx4Ute!j~p;Winz@l9MSsb za?g7z6_-}Mco5$nYP{{bE#_LJNA--u$E(Ec<3Z;G_;P@-ShlgFKTJs#Hz{6)J(+K(k%mdXClI7TB zbo=bgu@U(?KlWK)_cXPULhnZjC~XW$f+K891ac(zl}xi+rSrE<_lGR2TNoYmm)H^a z9A2!a-%h{p>#P<*E&noH*4E2w)}Fk2`AE=w@A!Wo2i6Z!wOrR%UXY@#5$__8?N zNKpSUYClT4J=cprWfF5msI#QPPdmGiZ!&jv4CNLB)Sh4|IRBzMU+5ywIE$0Q8we_C zZy9|gN>eyjE2eB>_L%?r%-ol$>6u4^If+Ak(;W+CMyhn>SGg5zZ!w7+r0S0K$^@!7 zyNl;ZkVQV~zzzCDun1Qpdg9jUUTB6ca@oQx!E->$|Xx{mE&ev%;ue|A#$5=-)5gI7)r;i5hfY= zp@i<(JnEHVPnKcgbLS&exevPz^kmL0ILxa}TAt<%+W%b8(xmISy;e zbWPaOhSZ5UcQn{WWf;JUiPUF zKZgO0pp8dP4IVvQG1sjja=EK_Pr9zZ^#O;w|7X@u5htH)oqI6py+*jH?^`%5O4I8- zWu+`eIG};io0M!07pPS8oi8?#p7NGL2}V<KmihIyE`04U`PWX%kxld8HGMmO zSN)T;AOC&->tCk-_G($6y@kS-dd;@Vh6SU+ z<2_5%(+%Q9Kg_J11$eg}pO>M>MDbeM)P9g;q-Px;&%344G`YA#oOx*AMdOvFmBZBW z_kF#D2cjA_4J=n07DF-X?rSr*ByquY>fW1ZIOeCVh*$F%WoyYeq?L3;nrII_!(n+W z*-qeUbxa3F_4uz_Twl-k`X2UVRkC*1`4uNhuDd==Oz_)uiTn~l?~-xu!HW{&P0BEa zh-BF~p6iVdyG<-R*1oICQrW7Rro!cd3v*z>VhV&E)(iU zI@(u+{%;YAZR0eFISp2GVpwVoPG~oIa^FPW7WBRTA^Uz7i6SI8RK0!bSl+l&vLy^x z_6#y6N(8g0k~SlG^E!XiI+KXsmy$8)#%odry=S2ii;taSsu!Qzm_{>;#*R20n#Sz+ zA5p>H27H!%FOye#TDdZjZ}()aRflb$T5P^XR$ETCT##qwgH*}@`Gee}{NxkRV=yUw zX>U!zq>f}4hpbxOCX;h&%y`&anlZ8==c!DL7y~1P1e5iRyEY>=inRp@Ulxju53o?5 zJ)z;ajVJ2kckM*&2ofG-F3l;>P4IcE(i`(@(g^em8`$KTRE9>(iO@cZ-e6^@O4?Ki zElTwbT)&8JkwDTRy!?6AaF`v3VL>5zGV)Y+J9fHk)Zef9Y68=K=@A%A=cp35@07)~ za{qa5GpUB@+FDM-d#zqvLo<)Uvd$Z9vr;!C;SMUq`A7w*iNi9{~zTU$CZlA+uE z4ISG{P7;a)uWV=2Bq+mOZPX8A{e{iusbyES^&17z8zR*rp89!(75dhwbQ zB&#!$;CAr*1cGn=%8II^)vOg}s^tp*SjJ>*jCkmy)LJJ4?KkyPAul-Ejg&Rja!9t; zcWO4C9+__y4u2eGoP(>BiPmf$AG)mMEgR$`>YC$3^1M~PbX?7}V=)qBNV1oTsDfq? zEk>&5Nn-MRI%bC}?+3dJv86aIbr4oKZ&>O-Z`uopMRf@-A{HuRJAX;4}x(C+B@)AeV*e?5H^N{}|y zKasvVNT2hk^!fh{=@WvqFa8th+k*5>f4cui;9pPwzn-b^y`TSckiOkd`Tu`Ce)r$? zkH1d+gLycAOI0^!oN|Trt&CbKRuC;qFCEio2@zry@%=#32Z?mmaL(~A!~|8pW;U-Z z21*$B3>89OdARzXL77b3KzFK5;dobszxDQ_=u-uWVJiEBFa-<_|lV@~EfSybB@ zVKI(fv6{sblW1c`$BEM_a1f%0v$w?dk9_Pek#?x+I_^9laL)%bitc%yt9we48@^dc zIU)?s*OE+lOgKA*(;Ua=|9;S&FJsMVWWVxq?F<8Hczs3yQ;_kMC(<29wYyUU5FIbC zlu48`i1y_($U;evyZA}GxhTV!v+aV?C+?%Fnj4hu0oAv@K96zGi}+xj@~pd4|MKl! z?E1x|2$kbrTtxhlJ0iPY5U(_f!r5`ZwUVtSvmv*V;e}a-$)VddJJa~lHtx^j_f!nA z;SV?+N3s!e3;AKyc5vqVFqL5L_(UN^FJVoS1>&HaGIJebLz0VDQ+svX0WXf?Z%2_I zFz3U>8f5DH_6sMStseFj%NUj%T@I2f3KWPNV>ApzX{}e15q|xpUrL7PeAX#GLL}c^ zux^0OT`1Mru~}37YEmWzG4Ed5LQfz}?g5^h$PA`lp>u^{T4DFIXLUmkccvM557!&DIS0f&^p)Lm=~jA;Xg>8- zKkYiTEtuw)4@pTH8a#tEQqNDk*hS4y|I*)<)5yB3Z|vz7{vpSd(ski6N_s=?7 z44tFq(rV_ZnVYUG$Q4vpmlP%S9He_wPpjWh;cn8)dvqb4Zq~BJrc(K0wE?0Q3^;e< zAR3_$vkMB*5K7H^sa!J{uj!Fpk~L)+d%fM5wz#J#=U5P4GMWC+zq#`1g;idT=HR}Q z7{gm6gW>A)Pvl{@dS*1fcrqT}hvzpMFO^mg7Uz1pb@R?|_PcrTym2$R?Cdo|n=se+ zyqYQ#7qZM#G;igfbQ$h3=&v@glPHcJ4SGNnUBkUwyChw|ntX-m!pV}3k4=syt@n6s z%y?p|C^am5rP6QI5=&K`vFzad9Vz`L<_latvOZ8kGbnhqmI|=l!VWvM#0yht$$BV z1yAfYXYQl|`Iy#{epHtvbAlyqK|~o@lWVY3Ed;ii{W!;rqO?rk$SP~5#geJK=<$o! zsKM4KmzCb&&hW~F60@36I1s;#A1Il5-JwbTJoAAV!DUns`X+NqpLTG>F03Ze4dX}QQuw9qT@Viv z%1(<&mAYzGW&DwtiLs5I4Cspkl(W5P1kc!f2^Vk=$NsqbX(+rhetwCqLlqwGD)T3 zP+8$JRkP71z12_2Wi1U^)>`Ac>$O%;=E+0Jy-Y;JEEH$#3q|^iT?Drb6xY<&)WnH< zHKL|%)bh#iU+kQybj}TGOuwFIW}e8V#hBEQ zOkWk$&P|yJE1A;jc=^@fNQY(=b;;s|lNFIqpS#pa{PAr&z9s^iK7dcJNSoxGrSn3K#s_8O)iw@DSf2%H@BvZ2-QHR6T zplq={uj2j~V{EOJuJ+tLMqF#vCAyo}o)J&N`=VgP&S^m{aHX1*NK@`8Q)1=K1C43f z&NvST83__D_RKn?XZs4%+6HS&V;+Y|k8_V15&5ad_I=elo>x|u=c#*Qq0lQHehvfG z0Z)rV>}x{!x{YdW?_v!bJf{D^3F*w7?ZrWy_RjZ)ux}oV&lSvT>p$$@#nW);V~WAB z-H&J^zPn-U*c^e?bO9&ptpPzzvXKhRu@E$-9E(so?>FOdSF&Z&m0ub+t=7|0GawOv z^)N^6Vl;!f)&)Kc%h$8Hk84?+Ls1sCE`VB@iRH)@JfSXYqdF8U-gxUOX|hM2jve&I zx|4;|mpZm{?r}Ij;C`%dQ)w_#I)lkmcTKS|Gbmq!?P9!1)$!5))!_Q=_@VPBx&IIC zFV_FX3!Dpj13mz;nkk06?a51m?%U3G)BI8GwB7+rN7M$e;NBfy0ZZ=ZlQZi^V8g zmbJLAr%UV+#0 zf+gYUt7j0-WjJU4#+qd;6pwWyl|0lShIb*s>UnZ6nP~IjNR#IUgxlQ6ryc2~zI96) zETt!AQm>@F<$9w#pGGB|2%?CS?7ha5ZaS|RQL@E;!kCnYS8`v)11fRJlc?X`Du{-l zvaq1E#OyZ3joVgKW=vbJHm$SxIPjICdOl&A2Hk}@M!U>IiED-uOP1s93vX5ydt1eu z;d+0OT1!CncJ=WRC)puPNOZY>c*JuCc~9L@>v#sKI`nV0Li=LptTCr5{h`!Ousmk` zBUz%|hYQ$m>KpMzCWdnmO-;kDWdZINi~@PL?W4U=8>j+_Q}XUt7DmlP45E$)UcX}- zttB#}ekvthc1^c;n-9~wT9h8#3a)2DiDFK$K4H^3-=*gvKz;*+<=_4MFy><=M1>1% zp>aGd8_fc0V`MxcV`{j4JTK<&h%e~SkTrb)G2k+k79Rt$O^n}p4EyR5{OJD5hXx0&U9l2~BS z0EeR)f|fMXONZ69ZXpsTS0eeAE3+-N3KjyF++|>qYjbUW+&HhFkCY9U^;-99j#Ur$ zaar`h>NxX1Ld+d@+VkJ3;i48wGI58!<)$6iy$5GYt@KRJ6&}gG_;69!R$?_J^YXJc z`G(I$GkayQI9;AhI31(zN0VUzT$CE&PgP(3E~$+Qk9U4UZUiDNclQ5T);rHk!kFF#!~cYEl?5hueE~gJN0GI7IPHdh>X-4WMQ#Qzyaf(vvaAe+WgiP( zC74f2VBWDC@X>K_feGpM9m~8mtt2n1zH~`f-+61%`2`t0T~=AXoN1;3jG#H(8QN0X z|L{rKcuAwyoxa%ZZCabDR>^eNXzzMfds^;Z2Uv33#rYcS5qUqS;C7$xfT*L2n>bgc z$Q$^31hNH}TPOpH-O4oE?$9&bG$+(?o0CId`(XUxZq8jR^ub#amwF5%u%AH$3>2e! z$ug@YXFFeTGcPed5x1r3Oj?mco%pE5h208iO`Gfpw0T)vDup?N}{WUNSW*L%~*B1sHG!A?6pWlw*N#` zzH!zbwZsAX^Jk5{3q0+ftB`&=DkD}v+kU)EehOC{^8dvcD!&*2MYZp1XGJ^H&lkvq z{`M2cerE)gwAu&@L9)fKNxZX}AwpNWTN5pMd`3C&l$2NPiZj zul-a0|JnOLF#lrbzyBYf|D2GVL7rna(eALBh#^o(!68TTm`;@J4D!}a8eC^1t3$+H zONkT-@hs3hn3--my+Df#{Zs)S_%VyCd;E|V_6(ta>e~$-#|U}y!-!U)QhNkBDyL5S zMLe}MqgDs@a(K@hW>;jA5}bD5>-twZk5%1+%`JRxeVM|#9jTvTmO*V^Mr z+1I+75IO%C6xkEXrl(&&u3(EMw;=m-ewDj61HTFzHHSe9iG%GXocaT=Z?_d5`K*!D zC7!HboZIm0s}qM!yKVG?ab^M!hY-RjbA8z7t3^_{%MSw8BuGW;eZ+|qo*dF0wpcAg z-GoP)lW}?C!zfJ&(pM=addm4DTRTJFu~hd6UQgMuYFBjfgA zkZARVX!}-w%T48I3zGJ>6rZ?jxmwY=A8VIRC4_gapeF3c*t(y8xE%65;qMpAe2f3k zzt2DZe*X5aJy`sIXZ)+*KL79@7swx0cwYy#V$nyPdWqcv%Lx~$?O2kkv*(TFC!a5- z=w~)dO%kAw$~xWfYL$e3tc%!QAE2h%+ zTe`4!&fX*Sd)8wlM)uGPUQC^XvyIFJB`2B1FJYmt^G##7O|C;L^h;vdIUJtkWM!Q< zCmh6owVN*p^IspY)b%Ysk|P=)TNMn}i()K}B>T9$M76QAlj*JqQ&kbA`?T9jz#2Dc zVpGhl?}%$%$m_XwjZv=4jb=LfWXq??fX5mZLopd*yz8XR;{@gPd@MhtXzG@fm~z@b zPE(aOGo!v1KlkA-V}E6(G`3el;Z0mYnxS4Z+EPCM4et2(MD|C?npL5UkwP-|4xF2G zDAjp=BTOP3S`_XV;B2{W^LYA7yq69WcOweD$NQ${<%7>{DqY$*=5abD&MU3Mmh_)< zQ**E(YYwXFm}VpxA#Xq>Z*e%0VV8TG%-szF@aafwjD|$uIAhk#Di|s2(_}Y;yap~_ z%d5+*J`wf%dwGFtd#U|9IGSX;Q|hd{>bb)v7A*J5M0F(Ww$o;7*U?>S_8WD{OyLOi zO^jqS-q$v#;SsW%6m%EPrM@``9cX~qe@hFoRK!+edZ{)dZ(v7qZf)!drs+e(YhbwwZxm2xdzlG z3q_)>g(ncX?voUGz_^r$gst*cFLo2V>ZGKfggkh9@Nwc6L$E%TYyV-Au9-2LNs5` z|MJPlW7T}uS>myxjtGy#dTf%nNJP|rKDy#BpM&f{D_oV}_3L9h{$Ec*{`Z`h{Nf<> z8~^!s{0ay4+5g1->;G*1l^P=Z_x1n3#`XU_vv@P1gE+TQ{kjUf*z#%``#cZzc!s#3 zpAQ_OBDt4*q&$jHZ5*Cv_%M*TE1hfQz`SD4`b6_KgInJf^Y)_#Wl>{t?9m49E~j4| z(IjsSp{o!#J^k6ZQB$jd8+M@B*k9R399GrIi7|GR)~O#%^>pq*pYuiCn10IS8$J9_ zL$8;~WK6u3TGZ~V@}av%X3rWNiK!R}>H3X_*?~w(0?m{yExcJ!MWlOgeq}zC$IUo; z%88U}>4Pn}D8zsI%=!no2s|MI}xL@&*cUN1> zqB0n+(sL*#a0EHR(y55bS5~i~G~MsN-9BL6u;&GBtjfneHW_wDotu&v9`jwl&}*^h zy!oo!_o@1RR-|1S$7R$vovtIXKRj9VLFCt-4}+=#U8Vlpq_hjS@-0FYkq_LIw19Id z3>;G=(H2xz7Wn2ZSCqTC`H7dS)4xD7Pa#L`6p`*ZO|V-=KB*J=AUn0rS36bgFKG1# zxsQ?ytd6cmi@q-EZUxt3uBUwEDhqZQYxAg)aQ4`5E^wpnKM68QeynehEF|RFRgkw; z)w9K(ZobQ(&++rYLE2iCDu+GCuEsQy4)Vx!Jkd;k)#gUg+LvuUo8{w2w-~Vv_feEa zq*$bwx+=E4=jnOxGJ`8fgeCb5D5hlK|n$2k`4)#zH})_=b`0D#~}oi2Bjqg z1d(o#6bWesq`OqQ8+?0Ez6XVV(vq?GYuHg?Vnw#2DG+rj)zy49+>33MZ9R1&owEyFq_|g4a z{;&SWU;U5&OZ|`k?ePzC;EKmjZjY~nsgQm*O`*FVS3vqjKEe&QAW==OwvsN`e`nk_ zJ>^Ee(P)|MT!ZXQzWeJQ#i7)OSd?@)JnsbC-fH=2;ri6xqBF(RnDCzIQ*^`*(;j%f zJL+cI)HxPZ$9FG-VSfD<6Q3yu>vq#U_E~?XDH%94#|2!e4 z>g9G8eKa%*(zRyUA0yticPrVXm}?cDq!2$BqTYu2P;e7xa39fmO6AKQbA{l+d84Jx zjY^J3#YEC(cKRYOEZSwe%L(?*ERzo7cFa>078Z0B4BZ_%vtYLsWmyy6s^4rxS=JEOXF$AwXwVE>!$o&n;VDgaynWDpaKUsWANM@k z>Ne7NWpahf(V+}9uL(!y<@W)xSf_Xxp&FkkjhtyNYh@P@r62gn$s`fEuT+Nr_5gE)T^+lQTCUl=D zCOCNIrr{ZFlsIzmS>SS~4Ud`8GRlR!2M@ABJ}iq42T-6Z?Mq8#9&}yC@L6mP>n>V+ zgeUn)t&VC+$=|~k%}p31UTv9UKdxLXrC;+~I9$g@kG-zL$uBL*Jb7|4KouK_uckVJ zx;`tdW5GUP&TEP=3trg0ThvLbj24cv8OYs+!@{Sq6OPurM8w{1`|*Hdz&=9SPp*@L z)d9|A+eku|FzUhUIS03C_vOMj-n1wVd@L%i-FvOPvw8%3JqY)!$AChq`qLKwQL)(E zw66)lm^;x`+u?I&$@VL~FYe2Fbs^$S(JgOYK0#}i5nS%i zC$DF|l*O7QDLDTExhGAax;^t+-skNzS6>+I*2$_cA0Ny(*(vxj+VNj-_mme*MjNz$HspTdL3H%|x&DXgKS=+n`VZ{C z!}!Av7=K{>IsS16rUQEfFoRjbj84>yfA0(4e`EX!7rggm@iTpn-{JVLg7n3H&i~^4 z9nxn5>4yTK1qG~80ce0z0Cd1<00!U;026=(I19iAoCDwhpm)mfz#1QL9&iCb03ZZh z1P}o(0f+&Y0VDuYz!d-)fE+*p&;VQmPy(m`*8w*G)BqX)Er1R{4`2W=0+;~I02Tl% z;3fdd4?9?M05}0$0B!&efEU0A;0N3SK(c~hEd&q-+y>kM+y#gLL;+#|aR4MM3D#18 zUjWho8GtN64j>Ou04M^K0LlOrfGXe~;66YNpbmHdfb?mCwH6=-paaka=mGQr1^`2V z5x^J#2bcg%0cHSmfCa!3UoipVGFZjZ z_aac#6azYPSYMEAr*??GZ&N=e!IZu)i+^et%R6!}+sh3NmPEbwT0+HnpQCBVxbUTI zt}%o@K)0e~xJP!|-zcq3+MyV-#>lEw3?;%-1y_bAkrPeGOw`hrftl;t{zi%J3Q*Mg z>F}}Ydblg->9;rp4!l30=$y0MYnAC3Um1J}Q+u!BssP*e#s_$&wFf|*%d36(J?D*El$u+F@6C&6Kw>xrUnyL-^Z#GX(7F!RUrgudKEF#8D)0a~@!s8JJ8`Sx^r7Lk1 z1{e6mZgdtD48)_0qxi06U;5RI&@Q>mT+80Wn9VrhyOg{s|A1k06KNcI%BQ)%H5W1a zQ5(iuZyE)nS`@bKzuGqjJ9g$E9()6lFft`x4_hovzd(G4F{|ELd-5HoHU%jbTy-;~Vx@|xyoYZ*( z2tnTPf0fidlshQ}BhJTdbe{~LZfgT&6>G=Lo-l1p$NBjTC#qm1u3&^<<;P_rp$wTw- zkM=S;%(c~T^2P!LAWsEHQb)BEDnX0GI(@Pnp{og+*?%Peqm>Gs`IBc9I!90x&f{`+ z;JB9)d3;dLp*RP>N?RYE3Hafev;}D)PLv0f zb0{Xlk^DoDXQ>6J*A9w$)cVcHi4BCDr1dkLyr}! zE9xBVlhu29@0+DX9{u*|J6|j&rkibv>sh;f>6sj^%$}8OR2Ok!n$KK(HFu!L#4qk6 zS6hVFZiEu1<1NI+v>Mw|?c9RPLrFXzNE@USiIO_!bH08d&}Mslcdu)OG4$@p@?j<#$7TYhs+&=wijW_tWUX1e&ahe>+$Q zbocqqa%4a92923N!uT@*jNngYKl*>%f83GrrO95+*-xNJ^o1SqcMbI4)YspBJ*vM+ zzf=9?`W@^~0^nG)0nozzKTjV8m{k6@{LuQZKP5ogV?XV0JpW7SLoFjH6aPBpAOF<` z>H8iwwErFH|6Jy82mf!Te_Z2#_5GQ@;-~#-=AW&q>^97b>4*?6eOae@UJ*bb2jlgX zq)9-(WxNLNXp%IEZbXF==3rJ5E3#5BmOu{UAKcuI?q8q(AnkvGzuNzQmiGVpW|g1v zwS{ekl?81wi7#>sbB>|XToxc+l7Q{V<~L+bNsJ4^4BvlEPEc}gk7xPfSq(xn%f%a^ zgVK~Fst(v@aZ=_ADBq^dCzeyRBlq7T_qGR+Bd@@u1BGb&StARl=rmicZ`uc3Hx_mN3+^Fzhk2LEH#^IxnDj!OQI{ni2c!g-%JKAZ@x<>5L z45Wg%#j#cUJ6cPba91jOr~6&}F?Cvb1Bu(JL@`r?0>am5l+i^$nK?RNbGc*Z0&~IY>`UmR-awz|5TaApgBzVhD61{3_fqWkuIGFy==X97J zT6q``Z9I@=?6^$|vaLXI8INo$kj)OVoE=$DO~AJwW1f&L2=ZciQu3c!_wE8g$lv9! z(myP8kX|F0F!>3h)K^0sH|0 zfIvVHAQ%t=2n9R?JO_jU!T}M0NI(=I8UT%ZLHxD+-ztHl=eH|pkNy$*&*FbQzyB=H z?|sEYUm94V?}Uw(-!Q=^rY!SC8``U(eJ$1@27K3YxGAk}qvgHX+}zmF2&kJH zY_v4BB#~msBc-DurivG$f2`GyQOzKv;q>qpYTw{_;{j)DIO1*2 z0=B-V5Md#%zW`q6d`o7=JGRh^+`5epm)4Xq&;%ykPD@arnt1HV=9ZAOKV>(?Lr(cT zqnbjFIt7#OehG3d9JS-ZWJ)u#x>NBOUvmBtrQRuP146_NPS1i5EV7vnxm);l6Z8S9 zwfUOo*d(J5X4oU^SBbG?K8Pzl-3SDI>J%fDP;>Tmgh_MpsVV)ZvSJt%gp{T4(B_%@d=A8m+z)1vUzNY< zT0Ot&^~%4dM;YE#5v?-dvcAnnte8&QCimRz({Rj??gzv18j{`!&+E@if_JxNU}ysl z0#WH3m%S=e&8Ul>wfKjodb|=JO{bj_=f@MGSWoBhv-gzh$+Vat(XF)1f8bsd(f^Az zIr4dG+OVe}4dG<$>Cc1{NaAv*amKS6mo2=k&3{pm*C1!Ods)SS>cPbjQdlDY5?kX& zHkBY*xsDh8xRYX7<9C>B?&uD(p{gTVdJdy!eS2(IaVvU5@CmQChan5xT8d#lcf%nx zCMqYxxo*@!$~`c3Wd|`vUR#Af<2Z#+pCh@+viZo3VbELr9^_Ml1?tqHKX;qD<;r(Q^ zqqFcrK_WP7pBVqx4UZ}JV8Mm%+Zsz$58Vq84O))-EXysZv!mg~XW8f)6Pmo9kGg47 z203oggSl0g+f}7+j=Y~ub*UH+REd-*Ni$FI=wO{dkVVdFSpzrZ;nZU(*{>EN=I@Bv ze}{DywF37RtDKAVZ2578_I--Vu}L3dLuF;+U#E?PX$-DxE~}*U*TrtQCjg#ZV<@fIiw!gTs(O!S^tNd1qEcQ1$-p8~23rf{k`N7Ub`@M#AZ!k#> z97oaOGwr|B%8$&1^v|HO5!No>A@;qMWSaMy>g6qOS&rH!8^69Rqmq@2<0=lA5^deO zh)`5)BWiBKwNkOuF6y{yU3w-T^BiTvDijMk)yQ0&^$n<=bu)La+}a$+eV?xSX>nac zu~sdEE83;(ESw|#!?gFLdk6tmuGprp`)(x<27J6CXv45m59#TM9n#2H?xi02!acUN ztuu^jfrrY`5!;zB1&+9D2=Ab`W3VkOh#IV#HxLtyb#YlrA20G+dOu3-&B5p>an*Nz zn7ezJKVUF-=Jso}Qp!TB?hmWjshDCIPu|Q7%ZA-&(#Q&xuCN;(3g7GwbF?v{ty3>u z*eF(bdeCe$^|Z!P)ql)D-mR8)QadE1jf?!j34!fb3#rzJ$2-)LU z7Pds@yei@1Rm&WBDlbHXd9KiVir+xI&DCN^3_kAp9d`Z$a(1KrJ4{k9`+O$d^Bdo~ zR7{ijD6e0CWZzK#QN5uDX2Z)-0wRJHb1V;KgkH@PH0e8KN zATgWAM|`7;GOibS@C-{y*+iCvb6jYui{(!_TQ1I8R;-QCOkKKMzteDU$#b^5K?z?} zjm?ZJgO0*F%7--1-W0FO_VEQ zcQh&Wc18Du%UBw5pV(mbwEGIu&WE$nz)^#fvo*!rE$BxIrBUxW^QCJ@T&b&Dg)=%K z?3>a_6Qxe8J_{O$7f*@FaHA2n)?OktB&(p+4Yhv$tW$&V^BOjXB*IUwkBo6F{<1L{ zF%nPswQ-8H#JW@zW!FT3_tMO@g z9LG=VYb&AVIA=GDC2GF3T;m>Te!?lX5HZOo z^RObfSqnWVJupp`CY4uV!+QEf@(aUKmEgJI@;CD-J@0f0Mw3ihIb6=GoA&JNHV<h$Dv&%K?GZO|_J6E2~%U&$M^SJtp7tGcvH0?I!auHqL7oM|L+xI~3t zFU%iUIBRgf)hsE#w@$#+(luhP2Z6O^-&4%iyDI1|Ct;dy&q*AT7|o|0=+C0;mF{t7 zz12Z$9%D>mJ^Sh9J!;0Ck9vE1&!&{#E$w9bn4nwx67>eo%`X^eFcc4mEVEUv7S<+0LJl5A#=?jh z0-D=l9ftf`=VPV_NY7vo9m{r zb=&@AyjYx=Wjecld~MG;Or==vrVIyz&zc+CF??EgnivlV2EU1S=iB!;E0(G72pdfg zy6~4oUI^NBEv%s0@p*^zR&}N5%2ZT-CLP1sO>)rw?4k8*eZAf4j8l=I!_GzNaQ0iU zsg($ph~BFaeiN45S1;X_oE&1%A8K7*3&OMC9Lvf~{B{|8#58ukm+^B8YdGdZlGqa4 zQ)9Bj^y}2VYb?2`bZZmpW9C{NI|ru`<{~8v4g~Q~wyp7Kt#% z+`hYI`#^j`C6P(%I5~>(4)6+V!9gQ3_m$lKyto|;1{%c$_c%9{{z}%I{b$Y(Q`_>X zz3xwHz3tHKKcCv=y6U;8W#ml%anYG$>C5}Knn}2QipKeNk%w1VS4}_0OkMymz@WwUnBf!^Oppl#}}V`>Cv}q^hZ*rlp^zrI((Z z!N$dci;1hUuyucZqNt~!r>35zq@ARro1&qUoSTJ>jBYJaQo}rM;NOaokcW?rjg*tj&dtQe#e|KE#>&aGxVM#>nsa`8rKzaR&d%T9;JLiK zkeHT-kB+Oau5o>Ohmntqm6DN{mWGavx4F5gtgO1fzLS}loS~tdqoInCkI&Q6o}!_E ziHD4olZ}*;eussiq@(@*{k_A%qo<~SiifYZw6L?YtF5i4udRuZkCvRAnV+6>e|(^% zq^7E=eTRgeqoSgwrlhE+dxe6itE+i~fpvg=e~5;Giin({pm%|PA^8LV00000EC2ui z0DAx(000O7fHhw{eSe0Bh>41ejE#e>O-& zdEw&Y6bdb}xMr=!P@AVZ2ANwTELlPFW7G@+%(k2-Q<%A85Frp=o;bL!m5vnS6Z zPcXRfQ>UoWqezn~UCOkn)2C3QLN$;C!vr0EvTEJRwX4^!V8el5QhJ(U2GAvdcAVGl1m@{iO z9HvbJD}r5!9!C>o3JE>t~bd3T9bdc5|8+C!#sdMYzjhasn5IbPd7*4#n@#Dyo z6JJr|LJb|mYcR+pfX0d@nVPJiQ3C=E2sLOV(4@S)`SZxhga83!0F3wWFx71_>C!p%Dqhuwo2;)PUoSBlhUyk0C}tKnP|9wme@z!5LRDd(JY z)@kRRaY|u>oHhXQLJf7i07MWkFp-~r6uc0GpAyvY0+oT{De0t?+KB)Z8qCm#44iiA z>8GHEDk`ToJkjYBHprlf4J*h{fe)GZP=O4MN>>A?u--cAuDtdNsvcEn-~}Hn6l?6U z$R?}ovdk7c0077iFu<`pKuhfo&1S3Zw#F_%g$Qm$(8svsmTT_0=%%agy6m>=?z`^( zafApjAi&4H_~xtczWny<@4o;CEbzbr?~#TGLo7hY!VEX;@WT*CEb+t?S8VZo#TI`+ z#|Sd)fyc)nhb;2QB$sUR$tb6+^2#d5p~na&ETPBDG}mnN%{b?*^Ugf??DNk)FR=#? zETAyS(MTt)^wN=>Z~_koD6q%WR99{F)mUe(_10W>?e*7QPoY2;9VigT*=VP&_S$T> V?e^Pn$1V5Va-*OC2^|Ci06T$ovQYp4 literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/images/account.gif b/src/test/resources/test-applications/daytrader8/src/main/webapp/images/account.gif new file mode 100644 index 0000000000000000000000000000000000000000..a98761b1aae8e5b110d4ef403676a9b9a68881a1 GIT binary patch literal 2241 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 literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/images/arrowdown.gif b/src/test/resources/test-applications/daytrader8/src/main/webapp/images/arrowdown.gif new file mode 100644 index 0000000000000000000000000000000000000000..11012117442d84082d04d7bff0abd57329a96c8e GIT binary patch literal 197 zcmZ?wbhEHbr9(_!#DGE2sga$JMWtcJg2rY}ZWV_q8x$TkFtc*b QDfywm(9F)s%*0>~07v9IIRF3v literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/images/arrowup.gif b/src/test/resources/test-applications/daytrader8/src/main/webapp/images/arrowup.gif new file mode 100644 index 0000000000000000000000000000000000000000..24b6c53f9882c78b47167f89b11162780d000fdf GIT binary patch literal 198 zcmZ?wbhEHb-7-jVY9>l^cR*514PuD-ZwwA3>9 zX#T|WGu&7Co_cmsd4X2io}9n`{^@Se{r~?zP&YxK_>+Z^fkBu-2c!~YCj*BwgE~i# zK!YPoBZsmGQ1sA2PC*`-gcAV`jU0R&0ZTj%I5M$wnaO?7*l^H|g+qPDk`AGVUTwPG R^L#iRn|wLBS=d+@tN~CqIQIYm literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/images/bottomRedBar.gif b/src/test/resources/test-applications/daytrader8/src/main/webapp/images/bottomRedBar.gif new file mode 100644 index 0000000000000000000000000000000000000000..c814872dfb7f74daed5fbcd63dcb39fe7ed08728 GIT binary patch literal 108 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 literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/images/daytrader_simple_arch.gif b/src/test/resources/test-applications/daytrader8/src/main/webapp/images/daytrader_simple_arch.gif new file mode 100644 index 0000000000000000000000000000000000000000..5d9bf60e64334e4fc962359944e2cdbc3e2b82dd GIT binary patch literal 43988 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 literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/images/home.gif b/src/test/resources/test-applications/daytrader8/src/main/webapp/images/home.gif new file mode 100644 index 0000000000000000000000000000000000000000..a74e60de55e6a7506f1894883b4c7f7ca5e20837 GIT binary patch literal 1185 zcmV;S1YY|`Nk%w1VO#(m0OkMyjFOSIxwv$HeR6(#a(#Mme0ia!rInqVlbV=+iHC7~ zdZ??btFEq>ot%V>imk7&m7AJ~kdBLzk%o?pjg^ygu7Sq?(_en4O%DmXwv6n&05yl9-p7o}I+T#k01x%gxPqf`7cezRb3hmVblk&ktN ze#FMcsVkC>pIgN=)JfPRjYlZ%v+aC>-jetVFYmX4Q}gpG{&`1rfMyoiyH z%FoV;laZvTrl_i_oS~nWo}IP0w|0Slu(h41ejE#=LB>d;S&K46l&<9h$gD&p)<^|sG=~y@aUwJCQ3&XgX*E_rkr-_ z>8GHED(a}DhRVkigW{p;s;su^>Z`EED(kGY#@a_0J}E%QuDtf@>#x8DE9|hu7AtHD zYxqAKZ59?YH2DEAF`DmTT^~0%(f?5|gy+?z`|x zl7t>U*|5jG_~xtczWny<@4o;C>@NWc)Emda2q&!Y!VEX;@WT*C?63j}1Ofm%n9y&M literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/images/homeBanner.gif b/src/test/resources/test-applications/daytrader8/src/main/webapp/images/homeBanner.gif new file mode 100644 index 0000000000000000000000000000000000000000..775318ab900874d375995087cec0ba439a7621a5 GIT binary patch literal 1184 zcmV;R1Yi3{Nk%w1VWI&N0D=Gj0001H0L*}ZfWW}O|NsC0|Nj6000000A^8LW000F5 zEC2ui0HOgB000R701F5lNU&f*0tgc-T*$DY!-o(f8k|@FfW?a#Giuz(v7^V26b*hH zNwTC#03i#WT*=a8N`ft8%GCH$;K>3JbL!m5b74i30fGu0O0=laqeznmm}ya|)2C32 zG6fK|s@0=YuWHqL^XJm9D8p8)*t4wJvj_nQD6qDz+5iIJe%(qJ>f5+@+3IzRS1#4M zfRo;p+jcM8!EyfvUQ84*T*G_`&t*(`Y2Uns*P^TlcB#d&VF92WP5L3q%xonKP+WO2 z)yrxjr-t2{@@vAeQD273x^~^$cysS{yxO;G)xzD{q{@6LXwaiArWIW}x^C5zi6%5I zlmJrVvUmO`F1qlk_n_Ogdq-$je0c1=1C)1qUOs#E_S>s|zdJtuzzjJB9%`F4$J}RP zNr#q#3RZX4X~T)1src1N;sl|N`+Wqha_6q zn1+yX*kXNjr8S+5U%|HFa-Agz-GbCHc+rj;z1ZM_*Y#(Vj`gKSVRzfz$KFF&x!0s* zFrs&!LKHd_rkDARY1Dv_!8anAV@71=m0wEPn3icenbe0~epnuu4Vg%1VFd<>AZXM* zn9+*^3?Q9Fi889Fqf43vVPv$e=puFYVd`N*R6)69i8K0Gql*8*`Du|wZknH|m`X)s zX8tyoy55Tl8R@B}vu4_AsJNww+>Jx2y6L8=z9`_U!vSgFb74gXK%=5Dim0thVl;qt zb#nP+g)VxQUsG0cnrXNgp84lqYN{tLxfN!*YP(Rr%jTT>ZP^!$>&AKMyPa~IYq;jt zo9(^8QrT~-wT?S0k3pdcs7-!HQZ zVoWt@$<3y%dPgb^^Up0S9p;1%qid(ivhHiD!tw$=RM~B%i}u`M^ZfF^aRz)D{(oD8 z7;@4G@4U8v=V}JAfrEx7HLcY`OKe7oa*VRaI2&CkbK(}7G^YT|JTtPC68+!IwU!Gu zr?@Vau&Ygn9^9I5m)>sMwWhAQe>7)ZGv!AGSi9!43Ol<}x&QbySj>`zR^$XQ-~7hR zM}Mux*J7KQ+;1z^RL%{9iqXs(buYeDg=48cD8xw&cn*pn#X5E~?rf!a6cn8WF9^EBq-=v% z!QkX7c)`^LMubk=9`d3_q^V@gdJ*ayl_aiVbCSOD?e2VOD%&9s<@djV z1@KNnEZ29+*Fdl&?k7o%qG|Z{IuLTDgK;CF743pW^YLbjA?)G@!Du2Z7RV)1Ok+ZR y;=(q%@r`hdqa5c*$2!WfCV0%F9{0${KKk*GfDEJ{2T9068uE~cOynN}0suS7#!V9d literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/images/line.gif b/src/test/resources/test-applications/daytrader8/src/main/webapp/images/line.gif new file mode 100644 index 0000000000000000000000000000000000000000..0cf9e512ea28699b6261536af00453481e224926 GIT binary patch literal 2346 zcmV+_3Dx#TNk%w1VWa^D0Qdg@b#;5Kti)DUaHFHFgM*26b(NEonbp+tT3Tg#dYh!A zx|^G%O-+N1jk85YSW;4qoSdy&Tbr@6%DcPNV`FSWLUDqErS|szm6oD4HC$|Lb38m} z+S%t-RgsL0lg`fJDk?|v^7@vQz0J+q&CTg;ZHaq(g6{71-QDWx>G9>|`o_l6)z#wS z;_6yjbl%?P%F5=iueILZ@_T!V(bC=8+V0-o{i&(B!NSea(eBF1*45SNyuH?4U1@c7 zgMx#S<>l>)im#rYv%VRsi&v5 z($d+#zr|x?X5r!X+S=jN)aSy&-LJ*4@U&&8@AouCBOBN?y*-)wZ?4R8(rczR%j)_{PTJsj0Ks+4s=U z+{ee+(b43xvc2f&|7vQ6X=!f2z|6nD*FT>`rO>)*VpUI%-+1a&9t+>FE39fCP3TU=#P)Jz`)11x4pl=(ZImm z$jIB!(AU@4?DXH@|3N`gM@M={NPAyjcxPv8XlQd#P>5Golvr4nZ*Gim zaE^$Gk%@_&h={C{le(XusHCK`r>L>3tFf!AwXCeSrl-EEtGlzaxwW*#w6w*yxWl`< z!MnT0yu8P^x6rw{(!;~b#Kg&n%hJQc-o(V;&(GV`)Zo|G-p9w{ z&(Px7*X7&W;@H^i+}!Zn+wa}n@ZjL};Na-w+|sN`1ADp^Yi=k z^ZfMm{Qv*|A^!_OL{CCRI!RJ7E-(V#?EoS91OWg5{{Soi0001_0R{j72>$^8As9%o zpurvp6Dp*@kc`8J4mD`VLa`!606sEm%s8W?$BvdP{TN9S6sToNQmRaep=C=)Fdadd z2|n>PPEc_Ku?69qtn3I&R(S~X0V0w`U|RH=lgP@_Km)UE0SZxga=oxp=fRy|^XCr*1cIbYTbvoZ(+bCLANg59C-8QJ;1lG-vhgL9f%`Oo*Nr+4%@JyYVqPQ zjw46*r9y?|%V8j2w&BK&VZ!nV{~gU&uU@;T)T6>(IYM4=aWj$_$S~`)!bmzfd^t?R3}(;(uo!hI*3gt*ErY( zR9}1{Muw+k=wVj2*wV;236Er5uPC7Dv;NqimtZ0s; zz0pc546z3xq4~0+5so z#<}Q*63R5}PIHF4)5I{%A@o{f@4fh1lMN->^vguQ0Q1pr6#dddOE?IJ^G!J5gi}hw z;gmy)4mxa6PB}V=LNOE@%i(b(9)~PP8FHw@i94KdpfU&Utn9MND9|IbJuTS7i_G=N zJhMId;Db*JDfA+AK0+5=G%Bd@(~Cb$`x8P4{_x{ZKTTJCfj?JQt@YOXNd0uv`uL+y zFQ^!8Hqk-{eGfkQ=u8g~K+tpZ%`Lc1kIFB&yvoW{Q2(JaC%TMGvK*0sEJrRLLy-%| z6lbgh##=OAjyMUIQp&>L3^4@4w0xrt!2pM@&A*gTl1(j?+-pd_^d1tgyzaisE(VqW zE5#DH=dL^M(-kC%uf<|V!LiFO`z*B4PAjdo%xmjBeBNTfZMfhrQ2n^!(&P-f=NiF1 z7~cB_4ZCnm6NohIqJhRV)wpYvHH+L^M;+F@VvU2fMA)wv{P(+!HrxmxH@@(VFCZ)r z5UX4%NVI|#kYgO=z*yrbh7LwBqD3RfL?%MEL6L zvJapP)0<-$Lo-C6iE?Vo1Tc+hOkqJ& znu4IFIL)a}GXRSW`1Geh{pkjVO4JMx^{7ZC>PR;*(xy7~sZfn-1%N@-s!}x=M+gR1 zwR(iEdey582&-7fO4hQ5wHRnE#sk*M*0#F!tsRJ~T<1zxW7yRgaW%#<_R81265_9b z4Xj`z5CK9ERIQuJkAMIGJNq2>5&!@I literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/images/logout.gif b/src/test/resources/test-applications/daytrader8/src/main/webapp/images/logout.gif new file mode 100644 index 0000000000000000000000000000000000000000..e31a6a11f6b36c46949204b1bb13adb42980bb1a GIT binary patch literal 2191 zcmV;A2ypjDNk%w1VUPeF0EPenA0L3Wk^uh81Cw}lhs>Wt+cf7czD15=#T!` zM4zDkJUo?$h}i!2){~R82Og}%E{`cH$Y`gx{EYQ#XO--W1!~Wpk{`bWIt*!9>_~UeR!!0d}n3&xD z@xA`g8@s#yjEw63;cQh^s;`UyW@fqm?4thOT%w}zMMa_T@BW>g@c!33)6@QhgxTZc z{x&v|{^Wa$i_`!A{{R30000000000000000000000000000000A^8LW004FXEC2ui z0FVG3000R705J#|NU)&6g9bm?S;(-V!-o(fN}NcsqQ#38G01S>Ktsol8bXQ;*`=gO zlVLs}T*U^V{S^x$y3b)pFf2TB}#w*6DCQSK9!?Ii<}x!FWjYzSIz~yex>TI zLHKTAy?W~wwwpL_;Khvh0@nMuhL*mRGt>23*D>D4mNyR$>~~C95M#-fMH^Ho+qQ3& zHuZa4ob6zI-tgzP|nY;p@1-e+5nu@;Q)jUUEGx*Vp4e2Q*dMn`QSmcm95;^0N1~A|P7E2nbWRN}@aYT7CoG3*a19a)- zmtHp4mQzw@!2lL!R3YOSYtG1K79Pl$0S#u5idK?4nK z>Pf?&fO;|Ln|x-Vf(m%HDJi9SW>80+fYwpRpnAF~Dx7;Bab*rNNRetzW04?(4E|O` z5CI4|EP+9b1TY1bX{J4CKoz_OE9@98m;oUJ$R>+M3&9q9ECW+8;Di}2AS;n&A`KqdFocC(1vgUxnfkdtF0a(NlckZvm zjZtvG0k?px3ocY~Xcbs6j71Ai?C?ayPdag^4_Kht@e>9=VTP0E9y$cZE{IDU4bU<` z1Hu;6__7XYq<}^h8+cL05CL0!@XsMXK?WHZEb*$VQt-q=tM|$p!M?5an?}&YVPQZD zJ|L`hz-%~ah8qaGQ70BotlY5~SqDsm0c;x(@DNX8@iM|_cntOv7IZ8({>%)UF!vKa z;Jm@sgclx197VsHr3__EpvKZ;DK0D22l_k4f0$d1HRhaiE`rxSbRNVIZHo{D8f>TF zM(0(e&^qRvIw88)2B7^PopsW{dES8P{+|yqc(H-##1|ij1w~t7h2lRs4!NqYKF#6{ zOkK{o=Ajq=AKX^QA-V-ur=YtJ=~f|n;8mFaU)$Mtp1S(rr{IM5m|K7@{Xqo2!SLGm zAA|)wNZ#^Z#e^F)jwh{xUJeWtlmvXhdYQYL7yM^|fmuLwLr7N&yobIjtd4W(+aKoM zH@om;A%~bgX?xS#3#f-aDyX`7s7Y9w_VKuIv7tJ!e;@5`JjbEY+d>a$3}!5 z4g&(Pq4KQo0RrgoCkRZ93<~rU2WCNQ=W<=((BOn=amoxU15}{G_yiqHi)|tZ*amEt zz6Qj>3$EJ$6teh)7C0ewJRpu6e4xlG1WX61OFdoQ)+Ae}K^{OscpGTeA(IJBF9_>T zZL3|H+Exc%@xV^Wbb-6pIR<#;QkQg0Kre~XydJ7%MNIzqK#n}Xr!hb=eN{k1&E!`| z1F&ff9>@R>QlK|1q<{x{Vp9bsN(5_qp$=Tg0uQhmQ8v|qp&c`#7cy|rh_=#BBPBxm zQt&9SK!KYSU{?i7O4EpDVWy_aB?xr+fi%3umj(!_UNZm`3P6M=Kw+glFsoeWsv#1= zF$WRAD?A5yA_1WYIXh89J})2vI28796Qf z0|7oT9sC%#02{y}6gm(B<2v`b{vnS5mXO=L^7e*D)6#%gkWbnO=exau19-Ejel+9-P;uSHvAp%esiPX zzYzGo5VlQ%5hLK*&}Ixfz`z!!n_Il<6~4X|(5l8V+zarCt|->fiBrttvVsf)C^*9z zia=u;2jIpxR)UU|fP)?5-~>Qc!v{uSsv;Zt$Vg7Il9$ZnCOi4bP-b!vz(nOLTX_Hq R!HAZ(%;he7c_IM;06S_;A2a{} literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/images/lower_banner.gif b/src/test/resources/test-applications/daytrader8/src/main/webapp/images/lower_banner.gif new file mode 100644 index 0000000000000000000000000000000000000000..9c7c294d93d4d6fbb71801af25ce0151ec59c28b GIT binary patch literal 2378 zcmV-Q3AOe|Nk%w1VGIL00OkMy5_ZA>22lV20DpgfW@cvL;o+H?nbOkIGcz-^w6qTo z52dB0%*@Q~?d{|5_z4LKOG``e@bCr(1|A+B$;rtlCnxsy_T=Q`-rnAdii&u6c)q^A z3=9m1hll+9{B*9{V`F2YqM|J=EvTrddwYBH^YczlPJVuVtE;Q=_xo&YY;tmP0|NuR z*zT5=miPMoJdVvaHa4!Vt}rk#x3{+)e8pg3V4R$sZ*Ond*x0Gf>G}Nr;O+O3z~k!b z>QPZq=jZ2CR8%S|DviD3Qk&B}JUmxdS0p4P7#JA3y1K)|!#_Vi(B$)JX=$IIpMSO9 zgoK2c!{q$^{)f8Y%HZ)55)#$t^qt4%`T6-36%|EAMKg)ZCW6NpdBaDQ(8k8b-t6{7 zlh1W^bx24^LPA2s-SFGn+dq)aL6Oep@cAo+$g$Gvg0|lpd&FI$)p@erF^I~LkdTv; zlQxUXpvdR0(CS@XUANWjV58O{AtCAV`A?bBE{4g;Gc*7H|MBzmA^8LV00000EC2ui z01N{<000O7fPI34goTEOh>41ejE#70rqYo4t7^J=`UJxj*y`19=0xCfu!&AYeC)Q?}cj$K*v=HjJgx!uveqf4KTF*R(~u5HuKE}Q#x+S{FnhEBb_`SS;@!vV3^wTCgAhh2p@jGyXyJtiCOF}S9CqkohZSN7 zR{$W9I8Oj3K9r(ACa#!{ixI&X7GrLarQiU?4WJ{AIo_yakBspcmq_+W@4>V%^I zjOsASWH(E46XiBjQu(AdD7teclv#qaWjjlD$9@T#rKXSR{^tR#s?`KpHtAl1bi_BAn~E2;-wzQd#MxXqIzkljczR zO`7yTIu4uhoC&I>n0g5%Ii9{LlALy_K}8B~c}3ijPJE0Kb!Bq9|tUQ%{R}CZp-1AEa|#D*F3M9 zI}eR>&Ow6&s}6o#(N_;%G(4omMNa+W#0v(Cb;b}LyKzh%|L*(!S(Zp_lA zobHok`>S%>_|6Qo*m$3eHreM+TXv@E2E8)M?Vb#9-FqYccSmxD!Pp#q@d1O>TML@C z!@+7@HP;M!{WVNQ-%NAbc)Kib(L%c%cY$en0r8>YtxJ`uiT9cdD`Xj()bz5?(U6^823r!uJt5;i?77qn-jeXT9s?WKx|H z2%H4w8wyHAPK;T@UZy|=#=M{h8u9=N;y{2B4nPThI6w(kNB|A^0S7ExfdPQPm=ZYQ z1SMPn3L@YK3J`z<9w?3l2ylT05YdPPD8PaWP{IcIp#TP0K?zSlgCP2$fev((xkhEd ze{|6_DEo?>q~Hex?xhAh@Iwz8W&t5UzyNSGKn6IlfCM}sj&NLn9~7VhJmTO16!60g zATR<3Fu(vo5J3bMPz5AFp*Rr`zyS&%NlI3L01G035Cl+w3vgin1vFs51`IF*JJ2YL zs7$3-42ZnG;OYYnTL1?vpdb*KAOQ+skOC5*pdutu06r*=2NWQK1x!E*64*dxB00%Q z3Lpd$P-0~YAORF`G6WS+5CsI_L@cWEo8UBxoS5c^Gw|h=4eLNQ6?6eJ;8K^oERG3m zkc0;;r~(EsrXMnZ1RDB*nUrj10ki;u;(%Zblq|prw4fkL=HQCqjHpDJA}2I3CJN{D z11uBNffzI>0TN�dBCzcrxYyS#ZGua;YE@sB{91fdCnT2vBDhfC3W00Any90SY8k z1rTVcBq2J{q8e2wu)2aDb}%`;pp&B>eIi+wU`IR}K$!~vI06C?@Bjhu(GM$KkW2OH zhX&+<1pjoVK>c8Xg8BgjK}~2Af?Aw_67{Hf%_~k|)rLFx0SpYw%TxW(0TC=n15{Bkp8gc}4bV60} zsK??~rU)9azyyM@0Yjny0u``;bNyh18BCXxCzSxFXtm4914w`b6foosj_`w1miNOT z_K1eIO5zfmxWtT!KnPeU241RAq%Oq40Th%08I;ukEX;rtDd585lt2YX46+j$lYtIY z#)wYL0Tfsmg5Qca#88g%z!pg5DtArFSk7`oYQ*I(d-=;X(z2MxOy)A1`OIievzph; w<~FLP3S@!`p}5>O&|aOJNh|^hX4Qo literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/images/menuHome.gif b/src/test/resources/test-applications/daytrader8/src/main/webapp/images/menuHome.gif new file mode 100644 index 0000000000000000000000000000000000000000..2fa03dd0b7428e90169cb5f5b606b06c8fdf2f51 GIT binary patch literal 2096 zcmb`Ei$BwQ1Au?Kx=u^ACStmrgE;SMrjnB%jYjTmE|D`Wa<{ZPuS)O6tc$tjl3N*} zBDIJ_YK(nHyz32Q7=lKJk&-3{_2b~=E>qcvzUl@kDdVFG;N?{w8~e1VXcoNXKFfo^t96ZyptN*`Mk|PlYF>U0t*n5H7sqPS zpfhJWw{I6T=0Kne2i_-VX3hr&R)eXm3-LW*(53zn0E@%6wz-j!jiA@O`_*5y!-`R` z*am^6aaY%pqM{iv*Cdnu6{#-}3|3VEFcwLrrr#Gq!NCpSLkSoOn4JOO&Ay%JT_SEy#8Pwp+9k!Z zi}13G{J0xS*vr3$=JJ(k9Rr=P1|F5%F#WbZv>vnXUN=6siCh2Uq zW=YeGobvW#WC9H$!SmA(aoT zeTrOF4Y!9L*%l_u**7)Js|IQ!M!T9C7iSc;V8?BHJIC;ePJTuF%J4LL7P1$R#n;u+ zmdC!RMvVe5Uo)HNm~D>hn12`$5m7sta}IAgrAS;Obeyp~0D{v5TZ| zUq`*kcrq&-lixOYwhPytwb6@?uoF=_>1>ftuLnwZ=U^xsMYXX@NTU+swr0=`!;W7) zX!a*NWxti)`C#*R<7*L1R(h19^VB^Z&6B4cvG>fhx@;DXXg!h7|b;Dq~+U*qKh+_uU{ zg5|`OAiUj_NtBklz_=(~H~M(7UVqc!LxW9&)IZjOa+!j?Hfs=MVOgSJy!y7@SZ507u* zHZ#7rwp)@5G3oBSVLs79WPq0aFvC+`YL6z*{Lvaehr#T>TVb}=CNJHr@!ozYCgO8= z5Jl#)`{RABUr0eP(VZ(I_o|Z(THAv}&72J$9xJUcR_b`69j(DT%{2~?MbcgiExkR@>M_MP?LQ2=I3QQtbQGH9n-&y2Eb$o@CdM&k&L>K4feR-CzN~0_&b_!u|}Y%g+Na z_D3Fq7p;l#qWEi>)SH~o`BJRY_8uETstAjfG9!9h{GFF=8D3)Zkhz~k+ZNYE5JGnH_k7IWU+`@tsW22Nk4$MtZZY_XtHn0=Qysq}eV!MvAGtq2N^@L`IP zcb?W(9dC;``r@0Bt_FmU5S519Izy2Y({E_2MDl5*@3!BxP8cO|i-%YP>HE02ZnAgvptIeh(sl}^FrjXcf?zBmKq99N({_M{ZKt+_6i&u?(6evg zNrUkPJm}R|@Z=k4_6eM_l=UDsna=zs-}n9g&f9M1@!`Rp13?fD+by%l_Z(mMZd~F2 zk84Ha+ilhuvOXQN1&)YNbE!>0+s6~qBiLO&|4yoca8>jMLpHRYB8U1CPBBvAhny`4 z)srN|&Wtc%lZh7?;;%1XMc}!H_)N1DE3A{L*IGrSzv>K})y%25;>kl$O%NCG3Bw@q z&w>~whPcs1{G49PBG^FK%n&bv8d_aYrx5{~q~sl?q<|8XV4~f?hH4(_ zsGuT60ozaH-XeF5dS-L$i(7^`Wh_LpyjU!xMM0v`M23}0CDl;XJV)f?Wx#Nf58~rY z!6dO0c_H&?08&M4(>XIl9_d92ez=nj;%%9D!Q=#oGL)1wr3`3U|A+ei4jr=|xs3Op z!tr1k61hiWI*%OQxbbo7Dn#{&U`C?>rDs_cyHm<&Jf$J1_cdT)#|u(>gSRZy4q}D_ zhqO&YAB(n^EAwFFw6T9RI=kZ2lOA_t%Z=UOlYmcq z#K-#6>Cu`$iMwsHHb{Qhzt7KY+jU)gH2U`B-TmwDZ@$T0yCu9n&9#26Uw%kmPrK1E JKR+71`U5hrAb$V= literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/images/portfolio.gif b/src/test/resources/test-applications/daytrader8/src/main/webapp/images/portfolio.gif new file mode 100644 index 0000000000000000000000000000000000000000..637f9ab9d532ec212d9d0fb56e89a8d97f17720a GIT binary patch literal 2273 zcmV<72p;!GNk%w1VUPeF0EPenBO`;hk^uh81CwiVtAF2u77%;va;{~=#T!` zM3R!zdwa{Dp#EE1t^W4bMMa#Bj?ZanxBk*2%F6zellA`IW82&Q@4o<#imAWA{;aF- z{`lW=a=tP$j{fbbf`ZNd&=-1n#K6D)nws2FQl^cK_0HJ{ZcXOt@ zyZ-*_oc`QZqoeO*W3%e&{%~)={?#82Op=n>etpwkUa|i7+>49TYiqmy)GW}?{@~yK_r(B{j;zDO{;aI<{`li_ zbHg_`k^b?$gM-!n&>Mn*yP28cR#vKvjOza3ZLf>~{_LXu-dv-j@MUGX@bCWq*E`eG z{+yifKp{*~Ws;phAfjCE&zKQWs61ZrMWT2Gk36>1?q}=K|fnQSsgw zT$eCjymJZDMSK^q;>CIY;&psuZ)3oK7td{MmvLpijxk?o0XBr#u|3bK5ju1&TenL; z^u0j4w(Z-vbL-yCySMM(z;i=^g2A*{on+1aT%C4pTiCMYNS{uxndGYn0La3r)5~ydd(3qUkNObz}*!Kgy8@hXq3=_ z7hX^RrkG)lX=a&dlBs445Quo@6(BkQM4D%+c_x_mnOG(QSM-Shm}uTfrl4jfp@exf zEGY#W12pRBqmDKQK?yNrKtT&&V*1664wL{Wre2Wo2A2+mLBdyHj^M=?WPm`%7yg?% zfJL8Gpy7Z6eUk9S6_RnP|k8f1`hM8Xh|5i}H3&{skU zU0zK_(G@cg1{FXU-2nq+hcO%(5Ck#l5ly3!a1}xiCvgmB3r&WIC768n{(Nn+O@`a_ zRWV%LKo6Hj8W=ROuDVk2^g_BdyE{S7%;ndC86bEa#t<=dexuY-JPjh~K)(^99&?#^YjH?=A)#S}pocM3)X!p}zWa*y_L#MNmzA81GX!LErJeLClx{zZ2{_|A_dPt!+;4p(m zjDZ8x=Q;XOhzi6bq7fN}#9N^ugA`%_2bp4LO+2cvNNXP@_q|jGgXaN@Ar-xf% z!GLoho)dRiG$Ow54MOyvtgv9mDaK$928=-!I>$s`Ik5;ih$4lsKs-R^uXDFrBNetd zfiBYE19t$U_O=H(8kof=^}<312v@lJkp~K4a^9Q4Nl3Qcv(xf&+YoWh`?8@47Uit9dM6z$?KO zSQdsjbxIGUabDg&7K7DYjYO1!LBH@OvY6s+rTH=))=r1F80ZwFq;VMrBznycB%q?) z3?uh;!jl5@01ryZORN@j0ILWheFp_R}%iG@i_O~uV z(o%Ua0pe2Dl1sV}la51G&t8B6a?nBzpiAB8LRUi2tpRp(8(lfnfV+fA=@q+0{+PFFhBEiZnft6ljPAxQ#=*JO|TLF*|BLp&isbRfjw z20Qq{;Gxh`o4^Ae$X0ULH1L6&^a9V$CO9Atv4}@ZV%!Xe3tVUdg)MB{i5j?E=Q@sp zWnh~d%J4z!>LP3S@!`p}3@w4xV%=psPs(U6Yx02G3eN?ZEUn9lS>0s;U#SR6mj literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/images/primitives.gif b/src/test/resources/test-applications/daytrader8/src/main/webapp/images/primitives.gif new file mode 100644 index 0000000000000000000000000000000000000000..a031415e539ce27235fd1b0637535fdfcc58c163 GIT binary patch literal 1213 zcmV;u1VZ~qNk%w1VNL)Y0OkMyjFXb7t*f4*qL-hYl$x23l#|WQ&BeyXb$@-EqoI+R zmv(@DdxV2>eS4~`tgEiBt*@_{pPqz_ikF?7m7AJ~kdB6qjEjX@CJ^!4JhX zprxy-eTId^$;iFK!LPNnbAEe~mzDYX`TYI-qN%5xp`m?-gr26Pe1(IJmXxWmuFuob zx4gTFk&vsdt<2ER*4fx|eteUhnx3Pf!N$bM&CAx;*NBpjZ+m!fdwGhHkfyDxuCub_ z=H{!fu6~Dxy1>4%xVD9kjBtE;aeR8y*431pnva*2rKzad+}o$Cs(yxrbANoGq@<>* zseOlpo};3qsHb&+eS3w1e~5;GiimlGfvBsiqNb*tp`dqxfB*mgA^8LV00000EC2ui z08RiM000O7fJRUXeuajIh>41ejE#sb*qc|A^$uXg+)29LOSf+bA8Y^i?W;!!2Mvf5E7tI5goY7~Wq1Jbhq2>7l>hLc zwBm8)6_qrskP+Yy1r4PsjPMWxtcE(3z$~7P7zY^+7;@|0jp2_77Cb;;paEi!h~CHl z*ub#CLk&KEFo=kbJog3~EQ(_=zym`J2t}YXUtZ%l@ADXNKxvYpz5DkWq{7JHVuSlX zed6b@pP|p6{{QLM-UcpY&_fJs;77n88#E|a4}Tco27DB{=SLYFT%h5G9A5AT1O;q} z!Uh}u(Se62j(9-_f2`OdiW+W!f{Q44Z~+S+cA#U35VY`Nhd^rR2N)bwVC0cVR`5sv z2}qu>!I4WU$)uANl<-HDS5`0s9Y$_&f{`Bl@nr=%w6H@3Y*Zk|nH#i_#x8DE9|hrR?YH2D`)vaQaB#=D=%%agy6m>=?z`~1 z+kh1u=wa`@_~xtczWny<@4x+`p#TSu6m0Op2qSVv6CBv#@WT*CEb+t?S8VYb#T9n} bKof9u?D5AShb;2QB$sS5$y{u~K_CD-EgFW! literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/images/quotes.gif b/src/test/resources/test-applications/daytrader8/src/main/webapp/images/quotes.gif new file mode 100644 index 0000000000000000000000000000000000000000..74499d7f33a747ba9553136eadddbeaa835f9267 GIT binary patch literal 2236 zcma*k`#;nB1Hkdm?8aQ0CR=XJ2?@DWy5P%(iCntLkvYzUa*teE>2$Wa#F0ZL(gPJx$xBUr3;x>M(*v4?ASkGg&0Yf^{p#yL z>Eor55wO$@B_gJ1jnkvmUz^0(S@$6qPE-Ey(jY=tGVr|DrWUGA<3@u zPc_>=6jFF4PHeAZMDOnByxtsBzn-ihluQ!Z&ApV^#%|3i_%-+~edQ7)Q!I-uaWuQ6 zfL0CTp3Fa4`}AFzXHD=}Pwm3H{UPBN-Q8>jWPwehlCA}fl&RyCYaMoucapRFjL9f3 zwXPr8aEmvePu>joZMw0b%I6%rB5l93A@hEV?r`r_)}g^Q>X6yTj_jj5loqeKN_O~l zXH(SO^+)(u?j2c+E8>41sgGLt*xyjMG%k!^P}+%r&sSUgT;RGOC>^PD%HuoPH3`-Z z8)5=YBAOaDmZWVUb8N9x_wm!Ul?9ef%T00`YMU#Afl}?HZ$BoEiy;Og zb00;GQgY2sc2Rd|@M=ZHyKL$TnKqHQPdX$_(ukFiaQGzs$z+{ueJ=cPXcaTXh(CKV z#a6b+M^@p{OyPy{mQSOQE6=Q51-l(6L~XT9kYP4%)wVdzXz2D`8iyrvkO?A7wyG4Z(D;1`PKo&@K zw1&7u&WR;O${uqe+jEHwMquH&#qK0L)&B+q9~#=71g9Rp&VVZsz2?&Is|x0_xlZ19-LASrmTeW8DP%)DcoV z;e%@EvKr1stXJKf*`ih5p%n*5Det@|gQh9t69~&%;%6NpSo~G&3b!huL&I44zg_Aj zaR(y}WgE43`OwKojUUgj2&Ib}B;+owh-y2WC~|vR$vo5(Eq+j~wH&k4)kfQ8v#FP&9s<-+WBMiVWc5US{KIY2y4Zui?Ul58qg^O$FZ-kQj}87$<|F7af5% zB}gF-WTVqn8RJw6TcrPFv^@sdlF1NyyR)&BiKPQ)1{~A9acIXh?V6l|Ptz?=L|^Vw za!W`nLfbQ;^OsX}>lKnb|2|Xo<|&5UQ!kvOr|phpU%CD6z6k0j1215}uVnZx`qv%7 zi~cnKzSm7zT$4aQz{H4{umP?fYL()ajzdgq#fw>T4&mv~ZOP;7^(WZn3U4w9*$&ncpNv$PaL>OT49-Q#4>be7okzy zV{_N~K7YZ^m;(f=QGipgj^u38ufUO$MxS$zKT{O-aPVy-@4dLY9P^ei@k*3(AXhxTL{Yj7f@Kf~-tIe7-nu{f}=Ok7E-7tiNt-n@W92}8_ zP(q~0#$ntGCE|qh2CI-aVG4bMl0eFp2D@@)xEQBIJ$vaH%P<)X)bT=(ByU6uV%eWz zyxYI(eqNJA#z~;_RmW(#7z$Zz!8=#ZU#qz1)%MI3+q**}HQSHg`=5Z)Qwmw_M&@g8 zvQf?woqXYaE&cL~_+Cke#d>vy?xHtx8P=fXtZUpNOq1E-4%}F;DO9Wo)W+@=e3Zf- zH>2rSyCitZK1YuJs>lP95msEYyvjyWQS-O6}`StsJMb9p# ziG27W_*nG)qvwVFw{326utOc9-(R{iDWU2r?D}?HzG9d|pD&?OB6@Mb4rxk5!W=hW zJgKNk{JmXkb0GGG<0a*c%)aS?TZ(X92u@&-0u0d7o}aB*+3B?S10xIsO%IN?uPQsp t`PLWcRzrL+)Hida;ah*ir6}cj`%e}lxe%r$`Qb+2C+n^2Kfz#-JhbqoAm!)z;R1hJ=}* zpNx``w70gGo}9eCzPr7=o1dP7i-~xGfWyVazQe+noSTA+iIbX`p`@gCfPR39hk%NR zl$x22l#_pmg>-*>g^!G@uCAG%o|m1Rgp7)(tkj*N|!laiU2kd~GI z|NpnVyXorc^!4=L;NbJ~^PZuhcY=SDnU{~1l#iB_eussco}J&|->I#ujFXawkB$8N z{BwSLuClSJt*xuCu9=>lb%1`Qsi=sLj9rthK`M+s;P>UlCHJ1?CtG^ zjf;qokBpR)+1%TamzJHPp^A}@o}!_Ol8}m$k^TPtl9-owf`Fi;qkM&gbANn&hlHxE zte&Hydxe6aq@<>*sidf}WfPHy`fp>v_A^8LV00000EC2ui z08IcL000O7fGsTn3UPmjh>41ejE#d5S$jQpf%+1co7GzRfdwkZ{*xB0K+}+;a z+9wngHhV>O=;`X~?CtLF@bT+oM=mUTclrAJ{Qds_00Ro_$Af?i8yfN`T*$DY!-o(f zN}T9W%@-FPG`Ok5v7^V2AVZ2ANwVa}C_r5B&|_wf%a<@?%A85Frp=o%#XNB_MGpi# zK!XY$O0=laqeznu?Xkth85~1INS#Wxs#QEx@L1i-wX4^yDZ02ofuq8RvuM+*P0J*J zr2=dJM0`^51p&k{uu!jI?oS@-`9CqlTh7Z7S z0t^5^U}6Ulw6I|vEdcPs30SmXhlvoJ0006X=GY+)Nw}ba08pSH~DK>#%H0)ALP!lRHzDygJKR8WDWJXB!Bq@0pa z#-*KxI;j9xxX^?I8tkF!s;su^>Z`EED(kGR`T>Fq0#x8DE9|hu7W*p= z7P#QYA9Tdw?6c5DEA6z@R%`9G(f*-<3ljX{2OZ#sEAF`DmTT_0=%zbvA91+wM+P+b zA@98O)@$#*_~xtczV&_}fD1$r(FY_17i{psi~K-?3m^3HLmv=FEb+t?S8VYi#TaKi i@c?}w@xuoLz#;O;B$sUR$tb6+^2#L-@Po&J0028Kt8;Y# literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/images/spacer.gif b/src/test/resources/test-applications/daytrader8/src/main/webapp/images/spacer.gif new file mode 100644 index 0000000000000000000000000000000000000000..5bfd67a2d6f72ac3a55cbfcea5866e841d22f5d9 GIT binary patch literal 43 mcmZ?wbhEHbWMp7uXkdT>#h)yUAf^t80Ld^gF}W}@SOWlZ0R#L1 literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/images/ticker-anim.gif b/src/test/resources/test-applications/daytrader8/src/main/webapp/images/ticker-anim.gif new file mode 100644 index 0000000000000000000000000000000000000000..04c4c88b275af70e60f2c085842beb8862c4ce38 GIT binary patch literal 6035 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 E09q+;;{X5v literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/images/topRedBar.gif b/src/test/resources/test-applications/daytrader8/src/main/webapp/images/topRedBar.gif new file mode 100644 index 0000000000000000000000000000000000000000..2198e7d6797d355a2653ab39f90caf05045a1048 GIT binary patch literal 279 zcmZ?wbhEHb6kuj!IKse?S5^N1|NmpBPnFi!E?TuBzq;c4kMDicrp{ipu(iLppr*2> zt);4^>B{x%+jj3Ns;#Q+Xf3R%%&#gxX>80u1W^3R0#>C1B0+XCuuf4(_DIQ`m$7PH z&g)GKDh&C#_bb-DS69$6nOCrb*+j%~(IoLgk!b;n3WXkS>w^v*=z3eVw1fS-_c2DM zj4vr?^LF3=u%pIr{q6TZ_SBt!|NDPKV^ecWYg>CqXIFPmZ(sj}iIXNznL2IyjG41$ z&zU=K{(^;z7B5-4Z25|nt5&aByKeo4jhi-a*}84}j-9)9@7cR=|AB+KiVW5OO2m3c literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/images/topline.jpg b/src/test/resources/test-applications/daytrader8/src/main/webapp/images/topline.jpg new file mode 100644 index 0000000000000000000000000000000000000000..d51fee327e92ab477e93ae923a138a13268d0117 GIT binary patch literal 645 zcmex=^(PF6}rMnOeST|r4lSw=>~TvNxu(8R<c1}I=;VrF4wW9Q)H;sz?% zD!{d!pzFb!U9xX3zTPI5o8roG<0MW4oqZMDikqloVbuf*=gfJ(V&YTRE(2~ znmD<{#3dx9RMpfqG__1j&CD$#!`l~&y8iV1GFa55!2rd~|8D{Stt8ap literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/images/tradeOverview.png b/src/test/resources/test-applications/daytrader8/src/main/webapp/images/tradeOverview.png new file mode 100644 index 0000000000000000000000000000000000000000..f42159406a61ac78280d3b326c5c1296a8fa4d01 GIT binary patch literal 206781 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

    i&0tWR2prcbG^+(^;DtV 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

    q(W``HNauh_>7>9 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 literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/images/tradingAndPortfolios.gif b/src/test/resources/test-applications/daytrader8/src/main/webapp/images/tradingAndPortfolios.gif new file mode 100644 index 0000000000000000000000000000000000000000..85827ccca1d9eab82103f5a85a7343cc74f171ae GIT binary patch literal 1677 zcmV;826FjFNk%w1VT=GB0OkMyjFXaXdUw{@*~`z)y}!S9fPS~RxsR5VeTIaOl#{Np zu+P%c#Ky*(pr4nXoR^%N&Cbo`=jXeh$&W^z`(h zq@wo5wzig=nwp-StFNw~q@&f>)}yDUr>m-wmzAZdsKds^q^PERg@c}=p`N0m zaC~{u)YRMF-iMEk-QeHD$j6|hqxAOn>Fevr%*%6re9X|#gNuo8dwBKr^^}{Lf{TjB z%gddjq14yb;N#-r7fug^i2Z+}oq8s_5$JtF5i3sj1c0)tR22s;sPihlH!H zuAZZ!q^PHJe|(~*rgeaQdxe6aq@;O+fu^ddsH>}-p`dqxfB*mgA^8LV00000EC2ui z0E_?~000O7fPZI84o!ZCh>41ejE#F}Yg z+qZE4td!*0azk7=qAQHEafe#IiGyu#P?gTO%LP(xWc`^=7nEzDX zY}r5v95^_Op8O_;iWLMnQ^2g^$!N>2L$q0eBX#A~Ay!j(&3p8O7;!`hA5Ofuh(9fi zi)hiJ4{_!=UKsD;e0Yx*A&j^9(?iK0<=aK{h!I10h~&zV3uge~`S9??LsU24qKESP z#Qjh~fTF+u{{W)!M-Kh{VZAt1! z!yg%v_=1HhFoD7gDyV=UgqY>Pgo`UgIHHIoqQHQKF%YQ09~KfA;*kCMAw?4>B&p>8 zl1!fP2MkI6kpc`i+~C6r3ao(TlPAPb!wD&TnSu&d{xQT2e|%}jA5B64#THfbr7cSuoz37mH7 z>8B?A(FdoZa_T?|n3(`U3Y?~3g9)y}%4(=t{c(T^ef;q$5-aqv!Vj3D#OG}k=BA2i5}v(8G4Ai*Ca%%H*n z2dFT^2q_%xug*EM@B<0% zvw%Y3#1pQ?7zKc!{PN5zGlJit5<4*>AI^VWkP!4A(Sk;L`aQx87s0Ma{OKKMX< zzkKvSfbYHr7F^K5{Pfpv|NZ#qumAjRsIUVI4cMOm2S~sI8gPFah(aAWz`zDN@PQDF zpadt#Koc~e0Tj%j1~b zhB(Zj4tL1I9{TWyKn$V~he*UC;-L#$fPx;D$iyZ(@rh83q7z-+U<{)e$4JIRa4`UPNTV9p$i_Ch@r`hdqa5c*$2!{aj&}$^76MR*KKk*GfDEJ{ X2T9068uE~cOr# + + + + + +DayTrader + + + + + + + <BODY> + <P>Need browser which supports frames to see this page</P> + </BODY> + + + diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/index.xhtml b/src/test/resources/test-applications/daytrader8/src/main/webapp/index.xhtml new file mode 100644 index 00000000..e6cac242 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/webapp/index.xhtml @@ -0,0 +1,93 @@ + + + + + DayTrader + + + + +

    + + +
    +
    +

    Overview

    +
    +
    The Daytrader performance benchmark sample provides a suite of workloads for characterizing performance of Java EE + Application Servers. The workloads consist of an end to end web application and a full set of primitives. The applications are a collection of + Java classes, Java Servlets, JavaServer Pages, and Enterprise Java Beans built to open Java EE APIs. Together these provide versatile and + portable test cases designed to measure aspects of scalability and performance.
    +
    +

    + +
    + Daytrader J2EE Components +
    + Model-View-Controller architecture +

    +
    +
    +

    Daytrader

    + DayTrader is an end-to-end benchmark and performance sample application. It provides a real world Java EE workload. +
    +
    + DayTrader's new design spans Java EE 7, including the new WebSockets specification. Other Java EE features include JSPs, Servlets, EJBs, JPA, + JDBC, JSF, JMS, MDBs, and transactions (synchronous and asynchronous/2-phase commit). +
    +
    + +

    Primitives

    + The + primitives + provide a set of workloads to individually test various components of a Java EE application Server. The primitives leverage the Daytrader + application infrastructure to test specific Java EE components such as the servlet engine, JSP support, EJB Entitiy, Session and Message Driven + beans, HTTp Session support and more. +
    +
    +
    +
    + + + \ No newline at end of file diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/leftMenu.html b/src/test/resources/test-applications/daytrader8/src/main/webapp/leftMenu.html new file mode 100644 index 00000000..1b930bc3 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/webapp/leftMenu.html @@ -0,0 +1,56 @@ + + + + + +Leftmenu + + + + +
    +

    +
    +
    Overview
    +

    + +

    + Benchmarking +

    +

    + Configuration +

    +

    + Go Trade! +

    +

    + Web Primitives +

    +
    + + + diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/marketSummary.html b/src/test/resources/test-applications/daytrader8/src/main/webapp/marketSummary.html new file mode 100644 index 00000000..34cdd340 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/webapp/marketSummary.html @@ -0,0 +1,283 @@ + + + + +Market Summary Web Socket + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Market Summary
    + DayTrader Stock Index(TSIA)
    Trading Volume
    Top Gainers + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    SymbolPriceChange
    +
    Top Losers + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    SymbolPriceChange
    +
    Recent Price Changes + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    SymbolPriceChange
    +
    + + \ No newline at end of file diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/marketSummary.jsp b/src/test/resources/test-applications/daytrader8/src/main/webapp/marketSummary.jsp new file mode 100644 index 00000000..976164a2 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/webapp/marketSummary.jsp @@ -0,0 +1,156 @@ + + + + + +DayTrader Market Summary + + + + + <%@ page + import="java.util.Collection, + java.util.Iterator, + java.math.BigDecimal,com.ibm.websphere.samples.daytrader.entities.OrderDataBean,com.ibm.websphere.samples.daytrader.util.FinancialUtils" + session="true" isThreadSafe="true" isErrorPage="false"%> + + + + + + + + + + + + + + + + + + + + + + <% + Collection closedOrders = (Collection) request.getAttribute("closedOrders"); + if ((closedOrders != null) && (closedOrders.size() > 0)) { + %> + + + + + + + <% + } + %> + +
    DayTrader Market SummaryDayTrader
    HomeAccountMarket SummaryPortfolioQuotes/TradeLogoff
    +
    <%=new java.util.Date()%> +
    + Alert: The + following Order(s) have completed. +
    + + + <% + Iterator it = closedOrders.iterator(); + while (it.hasNext()) { + OrderDataBean closedOrderData = (OrderDataBean) it.next(); + %> + + + + + + + + + + + + + + + + + + + + + <% + } + %> + + +
    order + IDorder + statuscreation + datecompletion + datetxn + feetypesymbolquantity
    <%=closedOrderData.getOrderID()%><%=closedOrderData.getOrderStatus()%><%=closedOrderData.getOpenDate()%><%=closedOrderData.getCompletionDate()%><%=closedOrderData.getOrderFee()%><%=closedOrderData.getOrderType()%><%=FinancialUtils.printQuoteLink(closedOrderData.getSymbol())%><%=closedOrderData.getQuantity()%>
    +
    + + +
    + + + + + + + + + + + + + +
    +
    +
    + + + + + + + +
    Note: Click any symbol + for a quote or to trade. + +
    + + +
    +
    +
    DayTrader + Market SummaryDayTrader
    + + diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/marketSummary.xhtml b/src/test/resources/test-applications/daytrader8/src/main/webapp/marketSummary.xhtml new file mode 100644 index 00000000..aebae230 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/webapp/marketSummary.xhtml @@ -0,0 +1,605 @@ + + + + + DayTrader Market + + + + + + + + +
    + + + +
    + +
    + + + + + + + + + + +
    + + Alert: The following Order(s) have completed. + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +
    + + + + + + + + + +
    +

    Market Summary

    +
    +
    +
    + + + + + + +
    + + + + + + + + + + + +
    + DayTrader Stock Index(TSIA) + +
    +
    + Trading Volume + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + Recent Changes +
    + Symbol + + Price + + Change +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + Top Gainers +
    + Symbol + + Price + + Change +
    +
    +
    +
    +
    +
    + +
    +
    +
    +
    +
    +
    + +
    +
    +
    +
    +
    +
    + +
    +
    +
    +
    +
    +
    + +
    +
    +
    +
    +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + Top Losers +
    + Symbol + + Price + + Change +
    +
    +
    +
    +
    +
    + +
    +
    +
    +
    +
    +
    + +
    +
    +
    +
    +
    +
    + +
    +
    +
    +
    +
    +
    + +
    +
    +
    +
    +
    +
    + +
    +
    + + + + + + + + + + +
    +
    +
    + + + + + + + +
    + + + + +
    +
    +
    +
    +
    +
    + + +
    + \ No newline at end of file diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/order.jsp b/src/test/resources/test-applications/daytrader8/src/main/webapp/order.jsp new file mode 100644 index 00000000..fdb7fc99 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/webapp/order.jsp @@ -0,0 +1,233 @@ + + + + + +DayTrader Order information + + + + <%@ page + import="java.util.Collection, + java.util.Iterator,com.ibm.websphere.samples.daytrader.entities.OrderDataBean,com.ibm.websphere.samples.daytrader.util.FinancialUtils" + session="true" isThreadSafe="true" isErrorPage="false"%> + + + + + + + + + + + + + + + + + + + + + <% + Collection closedOrders = (Collection) request.getAttribute("closedOrders"); + if ((closedOrders != null) && (closedOrders.size() > 0)) { + %> + + + + + + + <% + } + %> + +
    DayTrader New OrdersDayTrader
    HomeAccountMarket SummaryPortfolioQuotes/TradeLogoff
    +
    <%=new java.util.Date()%> +
    + Alert: The + following Order(s) have completed. +
    + + + <% + Iterator it = closedOrders.iterator(); + while (it.hasNext()) { + OrderDataBean closedOrderData = (OrderDataBean) it.next(); + %> + + + + + + + + + + + + + + + + + + + + + <% + } + %> + + +
    order + IDorder + statuscreation + datecompletion + datetxn + feetypesymbolquantity
    <%=closedOrderData.getOrderID()%><%=closedOrderData.getOrderStatus()%><%=closedOrderData.getOpenDate()%><%=closedOrderData.getCompletionDate()%><%=closedOrderData.getOrderFee()%><%=closedOrderData.getOrderType()%><%=FinancialUtils.printQuoteLink(closedOrderData.getSymbol())%><%=closedOrderData.getQuantity()%>
    +
    + + + + + + +
    + + + + + + <% + OrderDataBean orderData = (OrderDataBean) request.getAttribute("orderData"); + if (orderData != null) { + %> + + + + + + + + + + <% + } + %> + +
    New + Order

    + Order <%=orderData.getOrderID()%>
    + to <%=orderData.getOrderType()%> + <%=orderData.getQuantity()%> + shares of <%=orderData.getSymbol()%> + has been submitted for + processing.


    + Order <%=orderData.getOrderID()%> + details: +
    + + + + + + + + + + + + + + + + + + + + + + + +
    order + IDorder + statuscreation + datecompletion + datetxn + feetypesymbolquantity
    <%= orderData.getOrderID()%><%= orderData.getOrderStatus()%><%= orderData.getOpenDate()%><%= orderData.getCompletionDate()%><%= orderData.getOrderFee()%><%= orderData.getOrderType()%><%= FinancialUtils.printQuoteLink(orderData.getSymbol()) %><%= orderData.getQuantity()%>
    +
    +
    + + + + + + + + + + + + + +
    +
    +
    + + + + + + + +
    Note: Click any symbol + for a quote or to trade. +
    + + +
    +
    DayTrader New OrdersDayTrader
    + + diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/order.xhtml b/src/test/resources/test-applications/daytrader8/src/main/webapp/order.xhtml new file mode 100644 index 00000000..6d90cb98 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/webapp/order.xhtml @@ -0,0 +1,308 @@ + + + + + DayTrader Order + + + + + +
    + + + +
    + +
    + + + + + + + + + + +
    + + Alert: The following Order(s) have completed. + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +
    + + + + + + + + +
    + + + + + + + + + + + + + + + + +
    + New Order +
    + + +
    + Order  + +
    +  to  + + +   + + +  shares of  + + symbol: + + +  has been submitted for processing. +
    +
    +
    + + Order  + + + + + + details: + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + order ID + + order status + + creation date + + completion date + + txn fee + + type + + symbol + + quantity +
    + + + + + + + + + + + + + + + +
    +
    +
    + + + + + + + + + +
    +
    +
    + + + + + + + +
    + + + + +
    +
    +
    +
    +
    +
    + + +
    + \ No newline at end of file diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/orderImg.jsp b/src/test/resources/test-applications/daytrader8/src/main/webapp/orderImg.jsp new file mode 100644 index 00000000..3d105a49 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/webapp/orderImg.jsp @@ -0,0 +1,248 @@ + + + + + +DayTrader Order information + + + + + <%@ page + import="java.util.Collection, java.util.Iterator,com.ibm.websphere.samples.daytrader.entities.OrderDataBean,com.ibm.websphere.samples.daytrader.util.FinancialUtils" + session="true" isThreadSafe="true" isErrorPage="false"%> + + + + + + + + + + + + + + + + + + + + <% + Collection closedOrders = (Collection) request.getAttribute("closedOrders"); + if ((closedOrders != null) && (closedOrders.size() > 0)) { + %> + + + + + + + <% + } + %> + +
    DayTrader New Orders
    +

    <%=new java.util.Date()%>
    + Alert: The + following Order(s) have completed. +
    + + + <% + Iterator it = closedOrders.iterator(); + while (it.hasNext()) { + OrderDataBean closedOrderData = (OrderDataBean) it.next(); + %> + + + + + + + + + + + + + + + + + + + + + <% + } + %> + + +
    order + IDorder + statuscreation + datecompletion + datetxn + feetypesymbolquantity
    <%=closedOrderData.getOrderID()%><%=closedOrderData.getOrderStatus()%><%=closedOrderData.getOpenDate()%><%=closedOrderData.getCompletionDate()%><%=closedOrderData.getOrderFee()%><%=closedOrderData.getOrderType()%><%=FinancialUtils.printQuoteLink(closedOrderData.getSymbol())%><%=closedOrderData.getQuantity()%>
    +
    + + + + + + +
    + + + + + + <% + OrderDataBean orderData = (OrderDataBean) request.getAttribute("orderData"); + if (orderData != null) { + %> + + + + + + + + + + <% + } + %> + +
    New + Order

    + Order <%=orderData.getOrderID()%>
    + to <%=orderData.getOrderType()%> + <%=orderData.getQuantity()%> + shares of <%=orderData.getSymbol()%> + has been submitted for + processing.


    + Order <%=orderData.getOrderID()%> + details: +
    + + + + + + + + + + + + + + + + + + + + + + + +
    order + IDorder + statuscreation + datecompletion + datetxn + feetypesymbolquantity
    <%= orderData.getOrderID()%><%= orderData.getOrderStatus()%><%= orderData.getOpenDate()%><%= orderData.getCompletionDate()%><%= orderData.getOrderFee()%><%= orderData.getOrderType()%><%= FinancialUtils.printQuoteLink(orderData.getSymbol()) %><%= orderData.getQuantity()%>
    +
    +
    + + + + + + + + + + + + + +
    +
    +
    + + + + + + + +
    Note: Click any symbol + for a quote or to trade. +
    + + +
    +
    DayTrader New Orders
    + + diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/portfolio.jsp b/src/test/resources/test-applications/daytrader8/src/main/webapp/portfolio.jsp new file mode 100644 index 00000000..c1fb732a --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/webapp/portfolio.jsp @@ -0,0 +1,284 @@ + + + + + +DayTrader Portfolio + + + + + <%@ page + import="java.util.Collection, + java.util.Iterator, + java.util.HashMap, + java.math.BigDecimal,com.ibm.websphere.samples.daytrader.entities.HoldingDataBean,com.ibm.websphere.samples.daytrader.entities.OrderDataBean,com.ibm.websphere.samples.daytrader.entities.QuoteDataBean,com.ibm.websphere.samples.daytrader.util.Log,com.ibm.websphere.samples.daytrader.util.FinancialUtils" + session="true" isThreadSafe="true" isErrorPage="false"%> + + + + + + + + + + + + + + + + + + + + + + <% + Collection closedOrders = (Collection) request.getAttribute("closedOrders"); + if ((closedOrders != null) && (closedOrders.size() > 0)) { + %> + + + + + + + <% + } + %> + +
    DayTrader PortfolioDayTrader
    HomeAccountMarket SummaryPortfolioQuotes/TradeLogoff
    +
    <%=new java.util.Date()%> +
    + Alert: The + following Order(s) have completed. +
    + + + <% + Iterator it = closedOrders.iterator(); + while (it.hasNext()) { + OrderDataBean closedOrderData = (OrderDataBean) it.next(); + %> + + + + + + + + + + + + + + + + + + + + + <% + } + %> + + +
    order + IDorder + statuscreation + datecompletion + datetxn + feetypesymbolquantity
    <%=closedOrderData.getOrderID()%><%=closedOrderData.getOrderStatus()%><%=closedOrderData.getOpenDate()%><%=closedOrderData.getCompletionDate()%><%=closedOrderData.getOrderFee()%><%=closedOrderData.getOrderType()%><%=FinancialUtils.printQuoteLink(closedOrderData.getSymbol())%><%=closedOrderData.getQuantity()%>
    +
    + + + + + + +
    + + + + + + + + + + + + + + +
    Portfolio + Number + of Holdings: <%=holdingDataBeans.size()%>
    +
    + + + + + + + + + + + + + + + + <% + // Create Hashmap for quick lookup of quote values + Iterator it = quoteDataBeans.iterator(); + HashMap quoteMap = new HashMap(); + while (it.hasNext()) { + QuoteDataBean quoteData = (QuoteDataBean) it.next(); + quoteMap.put(quoteData.getSymbol(), quoteData); + } + //Step through and printout Holdings + + it = holdingDataBeans.iterator(); + BigDecimal totalGain = new BigDecimal(0.0); + BigDecimal totalBasis = new BigDecimal(0.0); + BigDecimal totalValue = new BigDecimal(0.0); + try { + while (it.hasNext()) { + HoldingDataBean holdingData = (HoldingDataBean) it.next(); + QuoteDataBean quoteData = (QuoteDataBean) quoteMap.get(holdingData.getQuoteID()); + BigDecimal basis = holdingData.getPurchasePrice().multiply(new BigDecimal(holdingData.getQuantity())); + BigDecimal marketValue = quoteData.getPrice().multiply(new BigDecimal(holdingData.getQuantity())); + totalBasis = totalBasis.add(basis); + totalValue = totalValue.add(marketValue); + BigDecimal gain = marketValue.subtract(basis); + totalGain = totalGain.add(gain); + BigDecimal gainPercent = null; + if (basis.doubleValue() == 0.0) { + gainPercent = new BigDecimal(0.0); + Log.error("portfolio.jsp: Holding with zero basis. holdingID=" + holdingData.getHoldingID() + " symbol=" + holdingData.getQuoteID() + + " purchasePrice=" + holdingData.getPurchasePrice()); + } else + gainPercent = marketValue.divide(basis, BigDecimal.ROUND_HALF_UP).subtract(new BigDecimal(1.0)).multiply(new BigDecimal(100.0)); + %> + + + + + + + + + + + + + <% + } + } catch (Exception e) { + Log.error("portfolio.jsp: error displaying user holdings", e); + } + %> + + + + + + + + + + + + +
    + Portfolio +
    holding + IDpurchase + datesymbolquantitypurchase + pricecurrent + pricepurchase + basismarket + valuegain/(loss)trade
    <%=holdingData.getHoldingID()%><%=holdingData.getPurchaseDate()%><%=FinancialUtils.printQuoteLink(holdingData.getQuoteID())%><%=holdingData.getQuantity()%><%=holdingData.getPurchasePrice()%><%=quoteData.getPrice()%><%=basis%><%=marketValue%><%=FinancialUtils.printGainHTML(gain)%><%="sell"%>
    Total$ + <%=totalBasis%>$ + <%=totalValue%>$ <%=FinancialUtils.printGainHTML(totalGain)%> + <%=FinancialUtils.printGainPercentHTML(FinancialUtils.computeGainPercent(totalValue, totalBasis))%>
    +
    +
    +
    + + + + + + + + + + + + + +
    +
    +
    + + + + + + + +
    Note: Click any symbol + for a quote or to trade. +
    + + +
    +
    DayTrader + PortfolioDayTrader
    + + diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/portfolio.xhtml b/src/test/resources/test-applications/daytrader8/src/main/webapp/portfolio.xhtml new file mode 100644 index 00000000..8af86c77 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/webapp/portfolio.xhtml @@ -0,0 +1,340 @@ + + + + + DayTrader Portfolio + + + + + +
    + + + +
    + +
    + + + + + + + + + + +
    + + Alert: The following Order(s) have completed. + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +
    + + + + + + + + + + + + + + + + + +
    + Portfolio + Number of Holdings:
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + + + + + + +
    + + + + + + + + + + + +
    Total purchase basisTotal market valueTotal gain/loss
    + $ + + + $ + + + $ + + +
    +
    +
    + + + + + + + + + + +
    +
    +
    + + + + + + + +
    + + + + +
    +
    +
    +
    +
    +
    + + +
    + \ No newline at end of file diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/portfolioImg.jsp b/src/test/resources/test-applications/daytrader8/src/main/webapp/portfolioImg.jsp new file mode 100644 index 00000000..062418bf --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/webapp/portfolioImg.jsp @@ -0,0 +1,296 @@ + + + + + +DayTrader Portfolio + + + + + <%@ page + import="java.util.Collection, + java.util.Iterator, + java.util.HashMap, + java.math.BigDecimal,com.ibm.websphere.samples.daytrader.entities.HoldingDataBean,com.ibm.websphere.samples.daytrader.entities.OrderDataBean,com.ibm.websphere.samples.daytrader.entities.QuoteDataBean,com.ibm.websphere.samples.daytrader.util.Log,com.ibm.websphere.samples.daytrader.util.FinancialUtils" + session="true" isThreadSafe="true" isErrorPage="false"%> + + + + + + + + + + + + + + + + + + + + + <% + Collection closedOrders = (Collection) request.getAttribute("closedOrders"); + if ((closedOrders != null) && (closedOrders.size() > 0)) { + %> + + + + + + + <% + } + %> + +
    DayTrader PortfolioDayTrader

    <%=new java.util.Date()%>
    + Alert: The + following Order(s) have completed. +
    + + + <% + Iterator it = closedOrders.iterator(); + while (it.hasNext()) { + OrderDataBean closedOrderData = (OrderDataBean) it.next(); + %> + + + + + + + + + + + + + + + + + + + + + <% + } + %> + + +
    order + IDorder + statuscreation + datecompletion + datetxn + feetypesymbolquantity
    <%=closedOrderData.getOrderID()%><%=closedOrderData.getOrderStatus()%><%=closedOrderData.getOpenDate()%><%=closedOrderData.getCompletionDate()%><%=closedOrderData.getOrderFee()%><%=closedOrderData.getOrderType()%><%=FinancialUtils.printQuoteLink(closedOrderData.getSymbol())%><%=closedOrderData.getQuantity()%>
    +
    + + + + + + +
    + + + + + + + + + + + + + + +
    Portfolio + Number + of Holdings: <%=holdingDataBeans.size()%>
    +
    + + + + + + + + + + + + + + + + <% + // Create Hashmap for quick lookup of quote values + Iterator it = quoteDataBeans.iterator(); + HashMap quoteMap = new HashMap(); + while (it.hasNext()) { + QuoteDataBean quoteData = (QuoteDataBean) it.next(); + quoteMap.put(quoteData.getSymbol(), quoteData); + } + //Step through and printout Holdings + + it = holdingDataBeans.iterator(); + BigDecimal totalGain = new BigDecimal(0.0); + BigDecimal totalBasis = new BigDecimal(0.0); + BigDecimal totalValue = new BigDecimal(0.0); + try { + while (it.hasNext()) { + HoldingDataBean holdingData = (HoldingDataBean) it.next(); + QuoteDataBean quoteData = (QuoteDataBean) quoteMap.get(holdingData.getQuoteID()); + BigDecimal basis = holdingData.getPurchasePrice().multiply(new BigDecimal(holdingData.getQuantity())); + BigDecimal marketValue = quoteData.getPrice().multiply(new BigDecimal(holdingData.getQuantity())); + totalBasis = totalBasis.add(basis); + totalValue = totalValue.add(marketValue); + BigDecimal gain = marketValue.subtract(basis); + totalGain = totalGain.add(gain); + BigDecimal gainPercent = null; + if (basis.doubleValue() == 0.0) { + gainPercent = new BigDecimal(0.0); + Log.error("portfolio.jsp: Holding with zero basis. holdingID=" + holdingData.getHoldingID() + " symbol=" + holdingData.getQuoteID() + + " purchasePrice=" + holdingData.getPurchasePrice()); + } else + gainPercent = marketValue.divide(basis, BigDecimal.ROUND_HALF_UP).subtract(new BigDecimal(1.0)).multiply(new BigDecimal(100.0)); + %> + + + + + + + + + + + + + <% + } + } catch (Exception e) { + Log.error("portfolio.jsp: error displaying user holdings", e); + } + %> + + + + + + + + + + + + +
    + Portfolio +
    holding + IDpurchase + datesymbolquantitypurchase + pricecurrent + pricepurchase + basismarket + valuegain/(loss)trade
    <%=holdingData.getHoldingID()%><%=holdingData.getPurchaseDate()%><%=FinancialUtils.printQuoteLink(holdingData.getQuoteID())%><%=holdingData.getQuantity()%><%=holdingData.getPurchasePrice()%><%=quoteData.getPrice()%><%=basis%><%=marketValue%><%=FinancialUtils.printGainHTML(gain)%><%="sell"%>
    Total$<%=totalBasis%>$<%=totalValue%>$<%=FinancialUtils.printGainHTML(totalGain)%> + <%=FinancialUtils.printGainPercentHTML(FinancialUtils.computeGainPercent(totalValue, totalBasis))%>
    +
    +
    +
    + + + + + + + + + + + + + +
    +
    +
    + + + + + + + +
    Note: Click any symbol + for a quote or to trade. + +
    + + +
    +
    +
    DayTrader PortfolioDayTrader
    + + diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/properties/daytrader.properties b/src/test/resources/test-applications/daytrader8/src/main/webapp/properties/daytrader.properties new file mode 100644 index 00000000..1f2ebeb2 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/webapp/properties/daytrader.properties @@ -0,0 +1,24 @@ + # (C) Copyright IBM Corporation 2015. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. +runtimeMode=0 +orderProcessingMode=0 +maxUsers=15000 +maxQuotes=10000 +publishQuotePriceChange=true +listQuotePriceChangeFrequency=100 +displayOrderAlerts=true +webInterface=0 +marketSummaryInterval=20 +primIterations=1 +longRun=true diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/quote.jsp b/src/test/resources/test-applications/daytrader8/src/main/webapp/quote.jsp new file mode 100644 index 00000000..e4972624 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/webapp/quote.jsp @@ -0,0 +1,234 @@ + + + + + +DayTrader: Quotes and Trading + + + + + + <%@ page + import="java.util.Collection,java.math.BigDecimal,com.ibm.websphere.samples.daytrader.entities.QuoteDataBean,com.ibm.websphere.samples.daytrader.util.Log, + java.util.Iterator,com.ibm.websphere.samples.daytrader.entities.OrderDataBean,com.ibm.websphere.samples.daytrader.util.FinancialUtils" + session="true" isThreadSafe="true" isErrorPage="false"%> + + + + + + + + + + + + + + + + + + + + + <% + Collection closedOrders = (Collection) request.getAttribute("closedOrders"); + if ((closedOrders != null) && (closedOrders.size() > 0)) { + %> + + + + + + + <% + } + %> + +
    DayTrader QuotesDayTrader
    HomeAccountMarket SummaryPortfolioQuotes/TradeLogoff
    +
    <%=new java.util.Date()%> +
    + Alert: The + following Order(s) have completed. +
    + + + <% + Iterator it = closedOrders.iterator(); + while (it.hasNext()) { + OrderDataBean closedOrderData = (OrderDataBean) it.next(); + %> + + + + + + + + + + + + + + + + + + + + + <% + } + %> + + +
    order + IDorder + statuscreation + datecompletion + datetxn + feetypesymbolquantity
    <%=closedOrderData.getOrderID()%><%=closedOrderData.getOrderStatus()%><%=closedOrderData.getOpenDate()%><%=closedOrderData.getCompletionDate()%><%=closedOrderData.getOrderFee()%><%=closedOrderData.getOrderType()%><%=FinancialUtils.printQuoteLink(closedOrderData.getSymbol())%><%=closedOrderData.getQuantity()%>
    +
    + + + + + + +
    + + + + + + + + + + + + +
    Quotes
    + + + + + + + + + + + + + <% + // Create Hashmap for quick lookup of quote values + Iterator it = quoteDataBeans.iterator(); + while (it.hasNext()) { + try { + QuoteDataBean quoteData = (QuoteDataBean) it.next(); + %> + + + + + + + + + + + +<% + } catch (Exception e) { + Log.error("displayQuote.jsp exception. Check that symbol: exists in the database.", e); + } +%> + + + <% + } + %> + +
    symbolcompanyvolumeprice + rangeopen + pricecurrent + pricegain/(loss)trade
    <%=FinancialUtils.printQuoteLink(quoteData.getSymbol())%><%=quoteData.getCompanyName()%><%=quoteData.getVolume()%><%=quoteData.getLow() + " - " + quoteData.getHigh()%><%=quoteData.getOpen()%>$ <%=quoteData.getPrice()%><%=FinancialUtils.printGainHTML(new BigDecimal(quoteData.getChange()))%> + <%=FinancialUtils.printGainPercentHTML(FinancialUtils.computeGainPercent(quoteData.getPrice(), quoteData.getOpen()))%> +
    + + + +
    +
    +
    +
    + + + + + + + + + + + + + +
    +
    +
    + + + + + + + +
    Note: Click any symbol + for a quote or to trade. +
    + + +
    +
    DayTrader + QuotesDayTrader
    + + diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/quote.xhtml b/src/test/resources/test-applications/daytrader8/src/main/webapp/quote.xhtml new file mode 100644 index 00000000..b4822706 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/webapp/quote.xhtml @@ -0,0 +1,291 @@ + + + + + DayTrader Quotes + + + + + +
    + + + +
    + +
    + + + + + + + + + + +
    + + Alert: The following Order(s) have completed. + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +
    + + + + + + + + +
    + + + + + + + + + +
    + Quotes +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    + + + + + + + + + + + + +
    +
    +
    + + + + + + + + + +
    +
    +
    + + + + + + + +
    + + + + +
    +
    +
    +
    +
    +
    + + +
    + \ No newline at end of file diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/quoteDataPrimitive.jsp b/src/test/resources/test-applications/daytrader8/src/main/webapp/quoteDataPrimitive.jsp new file mode 100644 index 00000000..4b6a8f8f --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/webapp/quoteDataPrimitive.jsp @@ -0,0 +1,50 @@ + + + + + + + +Quote Data Primitive (PingServet2Session2Entity2JSP) + + + <%@ page + import="com.ibm.websphere.samples.daytrader.entities.QuoteDataBean,com.ibm.websphere.samples.daytrader.util.FinancialUtils" + session="false" isThreadSafe="true" isErrorPage="false"%> + <%!int hitCount = 0; + String initTime = new java.util.Date().toString();%> + <% + QuoteDataBean quoteData = (QuoteDataBean) request.getAttribute("quoteData"); + %> +
    +
    + Quote Data Primitive + (PingServlet2Session2EntityJSP):
    +
    + Init time: <%=initTime%> + <% + hitCount++; + %> +

    + Hit Count: <%=hitCount%> +

    +
    + Quote Information +
    +
    <%=quoteData.toHTML()%> + + diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/quoteImg.jsp b/src/test/resources/test-applications/daytrader8/src/main/webapp/quoteImg.jsp new file mode 100644 index 00000000..9ae34c54 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/webapp/quoteImg.jsp @@ -0,0 +1,255 @@ + + + + + +DayTrader: Quotes and Trading + + + + + + <%@ page + import="java.util.Collection,java.math.BigDecimal,com.ibm.websphere.samples.daytrader.util.Log, + java.util.Iterator,com.ibm.websphere.samples.daytrader.entities.OrderDataBean,com.ibm.websphere.samples.daytrader.entities.QuoteDataBean,com.ibm.websphere.samples.daytrader.util.FinancialUtils" + session="true" isThreadSafe="true" isErrorPage="false"%> + + + + + + + + + + + + + + + + + + + + <% + Collection closedOrders = (Collection) request.getAttribute("closedOrders"); + if ((closedOrders != null) && (closedOrders.size() > 0)) { + %> + + + + + + + <% + } + %> + +
    DayTrader QuotesDayTrader

    <%=new java.util.Date()%>
    + Alert: The + following Order(s) have completed. +
    + + + <% + Iterator it = closedOrders.iterator(); + while (it.hasNext()) { + OrderDataBean closedOrderData = (OrderDataBean) it.next(); + %> + + + + + + + + + + + + + + + + + + + + + <% + } + %> + + +
    order + IDorder + statuscreation + datecompletion + datetxn + feetypesymbolquantity
    <%=closedOrderData.getOrderID()%><%=closedOrderData.getOrderStatus()%><%=closedOrderData.getOpenDate()%><%=closedOrderData.getCompletionDate()%><%=closedOrderData.getOrderFee()%><%=closedOrderData.getOrderType()%><%=FinancialUtils.printQuoteLink(closedOrderData.getSymbol())%><%=closedOrderData.getQuantity()%>
    +
    + + + + + + +
    + + + + + + + + + + + + +
    Quotes
    + + + + + + + + + + + + + + <% + // Create Hashmap for quick lookup of quote values + Iterator it = quoteDataBeans.iterator(); + while (it.hasNext()) { + try { + QuoteDataBean quoteData = (QuoteDataBean) it.next(); + %> + + + + + + + + + + + +<% + } catch (Exception e) { + Log.error("displayQuote.jsp exception. Check that symbol: exists in the database.", e); + } +%> + + + <% + } + %> + +
    symbolcompanyvolumeprice + rangeopen + pricecurrent + pricegain/(loss)trade
    <%=FinancialUtils.printQuoteLink(quoteData.getSymbol())%><%=quoteData.getCompanyName()%><%=quoteData.getVolume()%><%=quoteData.getLow() + " - " + quoteData.getHigh()%><%=quoteData.getOpen()%>$ <%=quoteData.getPrice()%><%=FinancialUtils.printGainHTML(new BigDecimal(quoteData.getChange()))%> + <%=FinancialUtils.printGainPercentHTML(FinancialUtils.computeGainPercent(quoteData.getPrice(), quoteData.getOpen()))%> +
    + + + +
    +
    +
    +
    + + + + + + + + + + + + + + + + +
    +
    +
    + + + + + + + +
    Note: Click any symbol + for a quote or to trade. + +
    + + +
    +
    +
    DayTrader QuotesDayTrader
    +
    + + diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/quotes.html b/src/test/resources/test-applications/daytrader8/src/main/webapp/quotes.html new file mode 100644 index 00000000..a69d6f6c --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/webapp/quotes.html @@ -0,0 +1,158 @@ + + + + + + + + + + + + + + + + + + + +
    +
    +
    + +
    + +
    + + + +
    + + + + + + + + + + + + + +

    Get Quotes

    symbol(s):
    +
    +
    +
    + + + + + + + + + + +
    Recent Price Changes
    Recent Price Changes + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    SymbolPriceChange
    +
    +
    + +
    +
    + +

     

    diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/register.jsp b/src/test/resources/test-applications/daytrader8/src/main/webapp/register.jsp new file mode 100644 index 00000000..d97eae03 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/webapp/register.jsp @@ -0,0 +1,169 @@ + + + + +DayTrader Registration + + + + <%@ page session="false"%> + <% + String blank = ""; + String fakeCC = "123-fake-ccnum-456"; + String fullname = request.getParameter("Full Name"); + String snailmail = request.getParameter("snail mail"); + String email = request.getParameter("email"); + String userID = request.getParameter("user id"); + String money = request.getParameter("money"); + String creditcard = request.getParameter("Credit Card Number"); + String results = (String) request.getAttribute("results"); + %> + + + + + + + +
    DayTrader + RegisterDayTrader
    + + + + + + + + +
    <%=results == null ? blank : results%>
    + + + + + + + +
    Register +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    *Full name:
    *Address:
    *E-Mail address:
      
    *User ID:
    *Password:
    *Confirm password:
      
    *Opening account + balance:$
    *Credit card number:  
    + +
    + + + + + + + + + + + + + +
    +
    +
    DayTrader + RegisterDayTrader
    + + diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/register.xhtml b/src/test/resources/test-applications/daytrader8/src/main/webapp/register.xhtml new file mode 100644 index 00000000..868b249c --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/webapp/register.xhtml @@ -0,0 +1,205 @@ + + + + + DayTrader Register + + + + +
    + + +
    + +
    + + + + + + + + + +
    + + + +
    + + + + + + +
    +

    Register

    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + * + Full name: + + + + +
    + * + Address: + + + + +
    + * + E-Mail address: + + + + +
      
    + * + User ID: + + + + +
    + + * + Password: + + + + + +
    + + * + Confirm password: + + + + + +
      
    + * + Opening account balance: + + + + +
    + + * + Credit card number: + + + + + +
    + +
    +
    +
    +
    +
    + +
    + \ No newline at end of file diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/registerImg.jsp b/src/test/resources/test-applications/daytrader8/src/main/webapp/registerImg.jsp new file mode 100644 index 00000000..6b41d064 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/webapp/registerImg.jsp @@ -0,0 +1,172 @@ + + + + +DayTrader Registration + + + + <%@ page session="false"%> + <% + String blank = ""; + String fakeCC = "123-fake-ccnum-456"; + String fullname = request.getParameter("Full Name"); + String snailmail = request.getParameter("snail mail"); + String email = request.getParameter("email"); + String userID = request.getParameter("user id"); + String money = request.getParameter("money"); + String creditcard = request.getParameter("Credit Card Number"); + String results = (String) request.getAttribute("results"); + %> + + + + + + + +
    DayTrader + Register
    + + + + + + + + +
    <%=results == null ? blank : results%>
    + + + + + + + +
    Register +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    *Full name:
    *Address:
    *E-Mail address:
      
    *User ID:
    *Password:
    *Confirm password:
      
    *Opening account + balance:$
    *Credit card number:  
    + +
    + + + + + + + + + + + + + +
    +
    +
    DayTrader + HomeDayTrader
    + + diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/runStats.jsp b/src/test/resources/test-applications/daytrader8/src/main/webapp/runStats.jsp new file mode 100644 index 00000000..f196a6db --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/webapp/runStats.jsp @@ -0,0 +1,445 @@ + + + + + +Welcome to Trade + + + <%@ page + import="com.ibm.websphere.samples.daytrader.util.TradeConfig" + session="false" isThreadSafe="true" isErrorPage="false"%> + + + <% + double loginPercentage = (double) ((TradeConfig.getScenarioMixes())[0][TradeConfig.LOGOUT_OP]) / 100.0; + double logoutPercentage = (double) ((TradeConfig.getScenarioMixes())[0][TradeConfig.LOGOUT_OP]) / 100.0; + double buyOrderPercentage = (double) ((TradeConfig.getScenarioMixes())[0][TradeConfig.BUY_OP]) / 100.0; + double sellOrderPercentage = (double) ((TradeConfig.getScenarioMixes())[0][TradeConfig.SELL_OP]) / 100.0; + double orderPercentage = buyOrderPercentage + sellOrderPercentage; + double registerPercentage = (double) ((TradeConfig.getScenarioMixes())[0][TradeConfig.REGISTER_OP]) / 100.0; + + int logins = runStatsData.getSumLoginCount() - runStatsData.getTradeUserCount(); //account for each user being logged in up front + if (logins < 0) + logins = 0; //no requests before reset + //double expectedRequests = ((double) logins) / loginPercentage; + double expectedRequests = (double) TradeConfig.getScenarioCount(); + TradeConfig.setScenarioCount(0); + + int verifyPercent = TradeConfig.verifyPercent; + %> + <%!// verifies 2 values are w/in tradeConfig.verifyPercent percent + String verify(double expected, double actual, int verifyPercent) { + String retVal = ""; + if ((expected == 0.0) || (actual == 0.0)) + return "N/A"; + double check = (actual / expected) * 100 - 100; + //PASS + retVal += check + "% "; + if ((check >= (-1.0 * verifyPercent)) && (check <= verifyPercent)) + retVal += " Pass"; + else + retVal += " Fail4"; + if (check > 0.0) + retVal = "+" + retVal; + //System.out.println("verify --- expected="+expected+" actual="+actual+ " check="+check); + return retVal; + } + + String verify(int expected, int actual, int verifyPercent) { + return verify((double) expected, (double) actual, verifyPercent); + }%> +
    + + + + + + + + +
    DayTrader Scenario + Runtime StatisticsDayTrader
    + + + + + + + + +
    <% + String status; + status = (String) request.getAttribute("status"); + if (status != null) + out.print(status); + %> + Modify + runtime configuration
    +
    + + + + + + +
    + + + + + + + + + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + Benchmark + scenario statistics +
    Benchmark + runtime + configuration + summaryValue +
    Run-Time + Mode<%=(TradeConfig.getRunTimeModeNames())[TradeConfig.getRunTimeMode()]%>
    Order-Processing + Mode<%=(TradeConfig.getOrderProcessingModeNames())[TradeConfig.getOrderProcessingMode()]%>
    Web + Interface<%=(TradeConfig.getWebInterfaceNames())[TradeConfig.getWebInterface()]%>
    Active + Traders / Trade + User population<%=runStatsData.getTradeUserCount()%> + / <%=TradeConfig.getMAX_USERS()%> +
    Active + Stocks / Trade + Stock population<%=TradeConfig.getMAX_QUOTES()%> + / <%=runStatsData.getTradeStockCount()%>
    Benchmark + scenario + verification
    Run + StatisticScenario + verification + testExpected + ValueActual + ValuePass/Fail
    Active StocksActive stocks + should generally + equal the db + population of stocks<%=runStatsData.getTradeStockCount()%><%=TradeConfig.getMAX_QUOTES()%><%=(runStatsData.getTradeStockCount() == TradeConfig.getMAX_QUOTES()) ? "Pass" : "Warn"%>
    Active + TradersActive traders + should generally + equal the db + population of + traders<%=runStatsData.getTradeUserCount()%><%=TradeConfig.getMAX_USERS()%><%=(runStatsData.getTradeUserCount() == TradeConfig.getMAX_USERS()) ? "Pass" : "Warn"%>
    Estimated + total requestsActual + benchmark scenario + requests should be + within +/- 2% of the + estimated number of + requests in the last + benchmark run to + pass.<%=expectedRequests%>see2see2
    New + Users Registered + <%=registerPercentage * 100%>% + of expected requests + (<%=registerPercentage%> + * <%=expectedRequests%> + )<%=registerPercentage * expectedRequests%><%=runStatsData.getNewUserCount()%><%=verify(registerPercentage * expectedRequests, (double) runStatsData.getNewUserCount(), verifyPercent)%>
    Logins + <%=loginPercentage * 100%>% + of expected requests + (<%=loginPercentage%> + * <%=expectedRequests%> + ) + initial login<%=loginPercentage * expectedRequests + runStatsData.getTradeUserCount()%><%=runStatsData.getSumLoginCount() + runStatsData.getTradeUserCount()%><%=verify((double) loginPercentage * expectedRequests, (double) runStatsData.getSumLoginCount(), verifyPercent)%>
    Logouts + #logouts must + be >= + #logins-active + traders ( <%=runStatsData.getSumLoginCount()%> + - <%=TradeConfig.getMAX_USERS()%> + ) + <%=runStatsData.getSumLoginCount() - TradeConfig.getMAX_USERS()%><%=runStatsData.getSumLogoutCount()%><%=(runStatsData.getSumLogoutCount() >= (runStatsData.getSumLoginCount() - TradeConfig.getMAX_USERS())) ? "Pass" : "Fail4"%> +
    User + Holdings Trade users own + an average of 5 + holdings, 5* total + Users = ( 5 * <%=runStatsData.getTradeUserCount()%>) + <%=5 * runStatsData.getTradeUserCount()%><%=runStatsData.getHoldingCount()%><%=verify(5 * runStatsData.getTradeUserCount(), runStatsData.getHoldingCount(), verifyPercent)%>
    Buy + Order Count <%=buyOrderPercentage * 100%>% + of expected requests + (<%=buyOrderPercentage%> + * <%=expectedRequests%> + ) + current holdings + count<%=buyOrderPercentage * expectedRequests + runStatsData.getHoldingCount()%><%=runStatsData.getBuyOrderCount()%><%=verify(buyOrderPercentage * expectedRequests + runStatsData.getHoldingCount(), (double) runStatsData.getBuyOrderCount(), verifyPercent)%>
    Sell + Order Count <%=sellOrderPercentage * 100%>% + of expected requests + (<%=sellOrderPercentage%> + * <%=expectedRequests%> + )<%=sellOrderPercentage * expectedRequests%><%=runStatsData.getSellOrderCount()%><%=verify(sellOrderPercentage * expectedRequests, (double) runStatsData.getSellOrderCount(), verifyPercent)%>
    Total + Order Count <%=orderPercentage * 100%>% + of expected requests + (<%=orderPercentage%> + * <%=expectedRequests%> + ) + current holdings + count<%=orderPercentage * expectedRequests + runStatsData.getHoldingCount()%><%=runStatsData.getOrderCount()%><%=verify(orderPercentage * expectedRequests + runStatsData.getHoldingCount(), (double) runStatsData.getOrderCount(), verifyPercent)%>
    Open + Orders All orders + should be completed + before reset3 + 0<%=runStatsData.getOpenOrderCount()%><%=(runStatsData.getOpenOrderCount() > 0) ? "Fail4" : "Pass"%>
    Cancelled + Orders Orders are + cancelled if an + error is encountered + during order + processing.0<%=runStatsData.getCancelledOrderCount()%><%=(runStatsData.getCancelledOrderCount() > 0) ? "Fail4" : "Pass"%>
    Orders + remaining after + reset After Trade + reset, each user + should carry an + average of 5 orders + in the database. 5* + total Users = (5 * <%=runStatsData.getTradeUserCount()%>) + <%=5 * runStatsData.getTradeUserCount()%><%=runStatsData.getOrderCount() - runStatsData.getDeletedOrderCount()%><%=verify(5 * runStatsData.getTradeUserCount(), runStatsData.getOrderCount() - runStatsData.getDeletedOrderCount(), verifyPercent)%>
    +
    +
    +
    +
    +
      +
    1. + Benchmark verification + tests require a Trade + Reset between each + benchmark run.
    2. +
    3. The + expected value of + benchmark requests is + computed based on the + the count from the Web + application since the + last Trade reset.The + actual value of + benchmark request + requires user + verification and may be + incorrect for a cluster.
    4. +
    5. Orders + are processed + asynchronously in Trade. + Therefore, processing + may continue beyond the + end of a benchmark run. + Trade Reset should not + be invoked until + processing is completed.
    6. +
    7. Actual + values must be within + <%=TradeConfig.verifyPercent%>% + of + corresponding estimated + values to pass + verification.
    8. +
    +
    +
    +
    + + + + + + + + + + + + + + + + + +
    +
    +
    DayTrader Scenario + Runtime StatisticsDayTrader
    +
    + + diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/sample.jsp b/src/test/resources/test-applications/daytrader8/src/main/webapp/sample.jsp new file mode 100644 index 00000000..487f6fa7 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/webapp/sample.jsp @@ -0,0 +1,26 @@ + +<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%> +<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%> +<%@ taglib prefix="x" uri="http://java.sun.com/jsp/jstl/xml"%> +<%@ taglib prefix="sql" uri="http://java.sun.com/jsp/jstl/sql"%> + + + + Hello world JSP on + + + diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/style-jsf.css b/src/test/resources/test-applications/daytrader8/src/main/webapp/style-jsf.css new file mode 100644 index 00000000..6381df0c --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/webapp/style-jsf.css @@ -0,0 +1,253 @@ +/* + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + + +* { + margin: 0; +} + +html { + height: 100%; +} + +#page-wrap { + min-height: 100%; + /* equal to footer height */ + margin-bottom: -31px; +} + +#page-wrap:after { + content: ""; + display: block; + height: 31px; +} + +body { + height: 100%; + margin: 0; + background-color: #ccc +} + +#content { + width: 700px; + margin: 0 auto; + padding-top: 95px; + padding-bottom: 31px; + font-size: 13px; +} + +#header { + width: 100%; + background-color: #FFFFFF; + position: fixed; +} + +#nav { + width: 100%; + float: left; + margin: 0; + padding: 0 0; + background: url(images/nav_bg.png) repeat-x; +} + +#nav ul { + list-style: none; + width: 450px; + margin: 0 auto; + padding: 0; + height: 31px; + line-height: 31px; +} + +#nav li { + float: left; +} + +#nav li a { + display: block; + width: 90px; + text-align: center; + vertical-align: middle; + font-size: 13px; + padding: 0 0; + text-decoration: none; + font-weight: bold; + color: white; +} + +#nav li a:hover { + text-decoration: underline; +} + +#nav2 { + width: 100%; + float: left; + margin: 0; + padding: 0 0; + background: url(images/nav_bg.png) repeat-x; +} + +#nav2 ul { + list-style: none; + width: 540px; + margin: 0 auto; + padding: 0; + height: 31px; + line-height: 31px; +} + +#nav2 li { + float: left; +} + +#nav2 li a { + display: block; + width: 90px; + text-align: center; + vertical-align: middle; + font-size: 13px; + padding: 0 0; + text-decoration: none; + font-weight: bold; + color: white; +} + +#nav2 li a:hover { + text-decoration: underline; +} + +#footer { + position: absolute; + height: 31px; + line-height: 31px; + vertical-align: middle; + width: 100%; + background: url(images/nav_bg.png) repeat-x; + margin: 0; + color: white; + text-align: center; + font-size: 13px; +} + +#contentContainer { + margin-top: 10px; + border: 1px solid #000; + -moz-border-radius: 5px; + -webkit-border-radius: 5px; + border-radius: 5px; + width: 700px; + margin-left: auto; + margin-right: auto; + padding: 10px; + background-color: #eee; + font-size: 14px; + text-decoration: none; +} + +#contentContainer a { + text-decoration: none; + color: #333333; +} + +#loginContainer { + margin-top: 10px; + border: 1px solid #000; + -moz-border-radius: 5px; + -webkit-border-radius: 5px; + border-radius: 5px; + width: 400px; + margin-left: auto; + margin-right: auto; + padding: 10px; + background-color: #eee; + font-size: 14px; + text-decoration: none; +} + +#loginContainer a { + text-decoration: none; + color: #333333; +} + +input.rounded { + border: 1px solid #ccc; + -moz-border-radius: 5px; + -webkit-border-radius: 5px; + border-radius: 5px; + font-size: 13px; + padding: 4px 4px; + outline: 0; + -webkit-appearance: none; # + margin-bottom: 20px; +} + +input.submit { + border: 1px solid #ccc; + -moz-border-radius: 5px; + -webkit-border-radius: 5px; + border-radius: 5px; + font-size: 13px; + padding: 4px 4px; + outline: 1; + -webkit-appearance: none; # + margin-bottom: 20px; + background-color: #0066CC; + color: white; +} + +.table { + border-collapse: collapse; + border: 1px solid #000000; +} + +.tableHeader { + text-align: center; + background: none repeat scroll 0 0 #B5B5B5; + border: 1px solid #000000; + padding: 2px; + font-size: 12px; +} + +.tableHeaderMarket { + text-align: center; + background: none repeat scroll 0 0 #000000; + border: 1px solid #000000; + padding: 10px; + font-size: 14px; +} + +.tableOddRow { + text-align: center; + font-size: 12px; + font-weight: none; + border: 1px solid #000000; + background: none repeat scroll 0 0 #FFFFFF; + padding: 2px; +} + +.tableEvenRow { + text-align: center; + font-size: 12px; + font-weight: none; + border: 1px solid #000000; + background: none repeat scroll 0 0 #fafcb6; + padding: 2px; +} + +.tableColumn { + border: 1px solid #000000; + padding: 2px; +} \ No newline at end of file diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/style.css b/src/test/resources/test-applications/daytrader8/src/main/webapp/style.css new file mode 100644 index 00000000..3d92fcde --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/webapp/style.css @@ -0,0 +1,82 @@ +/*====================================================================== + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. +======================================================================*/ +tr th td body { + font-size:12pt; +} + +A:HOVER { + text-decoration: underline; color: red; +} + +A:ACTIVE { + color: red; + font-weight: bold +} + +.table{ + border-collapse:collapse; + border:1px solid #000000; +} + +.tableHeader{ + text-align:center; + background:none repeat scroll 0 0 #B5B5B5; + border:1px solid #000000; + padding:10px; + font-size:12px; +} + +.tableHeaderMarket{ + text-align:center; + background:none repeat scroll 0 0 #000000; + border:1px solid #000000; + padding:10px; + font-size:14px; +} + +.tableOddRow{ + text-align:center; + font-size:12px; + font-weight: none; + border:1px solid #000000; + background:none repeat scroll 0 0 #FFFFFF; +} + +.tableEvenRow{ + text-align:center; + font-size:12px; + font-weight: none; + border:1px solid #000000; + background:none repeat scroll 0 0 #D3D3D3; +} +.tableColumn{ + border:1px solid #000000; +} + +.tableHeader +{ + background:none repeat scroll 0 0 #FFFFFF; + border-collapse: collapse; + border-spacing: 0px; +} +.tableHeader td +{ + padding: 0px 0px; +} +.tableHeader tr +{ + padding: 0px 0px; +} \ No newline at end of file diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/tradehome.jsp b/src/test/resources/test-applications/daytrader8/src/main/webapp/tradehome.jsp new file mode 100644 index 00000000..aead7aae --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/webapp/tradehome.jsp @@ -0,0 +1,251 @@ + + + + + +Welcome to DayTrader + + + + + <%@ page + import="java.util.Collection, + java.util.Iterator, + java.math.BigDecimal,com.ibm.websphere.samples.daytrader.entities.OrderDataBean,com.ibm.websphere.samples.daytrader.util.FinancialUtils" + session="true" isThreadSafe="true" isErrorPage="false"%> + + + + + + + + + + + + + + + + + + + + + + + <% + Collection closedOrders = (Collection) request.getAttribute("closedOrders"); + if ((closedOrders != null) && (closedOrders.size() > 0)) { + %> + + + + + + + <% + } + %> + +
    DayTrader HomeDayTrader
    HomeAccountMarket SummaryPortfolioQuotes/TradeLogoff
    +
    <%=new java.util.Date()%> +
    + Alert: The + following Order(s) have completed. +
    + + + <% + Iterator it = closedOrders.iterator(); + while (it.hasNext()) { + OrderDataBean closedOrderData = (OrderDataBean) it.next(); + %> + + + + + + + + + + + + + + + + + + + + + <% + } + %> + + +
    order + IDorder + statuscreation + datecompletion + datetxn + feetypesymbolquantity
    <%=closedOrderData.getOrderID()%><%=closedOrderData.getOrderStatus()%><%=closedOrderData.getOpenDate()%><%=closedOrderData.getCompletionDate()%><%=closedOrderData.getOrderFee()%><%=closedOrderData.getOrderType()%><%=FinancialUtils.printQuoteLink(closedOrderData.getSymbol())%><%=closedOrderData.getQuantity()%>
    +
    + + + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Welcome +  <%=accountData.getProfileID()%>, +
    User + Statistics
    account + ID:
    +
    account + created:
    total + logins:
    session + created:
    <%=accountData.getAccountID()%>
    + <%=accountData.getCreationDate()%>
    + <%=accountData.getLoginCount()%>
    + <%=(java.util.Date) session.getAttribute("sessionCreationDate")%>
    Account + Summary
    cash + balance:
    number + of holdings:
    total + of holdings:
    sum of + cash/holdings
    opening + balance:
    +
    +
    + <% + BigDecimal openBalance = accountData.getOpenBalance(); + BigDecimal balance = accountData.getBalance(); + BigDecimal holdingsTotal = FinancialUtils.computeHoldingsTotal(holdingDataBeans); + BigDecimal sumOfCashHoldings = balance.add(holdingsTotal); + BigDecimal gain = FinancialUtils.computeGain(sumOfCashHoldings, openBalance); + BigDecimal gainPercent = FinancialUtils.computeGainPercent(sumOfCashHoldings, openBalance); + %>$ <%=balance%>
    <%=holdingDataBeans.size()%>
    + $ <%=holdingsTotal%>
    $ <%=sumOfCashHoldings%>
    + $ <%=openBalance%>
    + +
    +
    current + gain/(loss):$ <%=FinancialUtils.printGainHTML(gain)%> + <%=FinancialUtils.printGainPercentHTML(gainPercent)%>
    +

    +
    + + + + + + + + + + + + + +
    +
    +
    + + + + + + + +
    Note: Click any symbol + for a quote or to trade. + +
    + + +
    +
    +
    DayTrader + HomeDayTrader
    + + diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/tradehome.xhtml b/src/test/resources/test-applications/daytrader8/src/main/webapp/tradehome.xhtml new file mode 100644 index 00000000..23ed8ed2 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/webapp/tradehome.xhtml @@ -0,0 +1,283 @@ + + + + + DayTrader Home + + + + + +
    + + + +
    + +
    + + +

    + Welcome  + +

    + + + + + + + + + +
    + + Alert: The following Order(s) have completed. + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +

    User Statistics

    +
    + account ID: +
    + account created: +
    + total logins: +
    + session created: +
    +
    + +
    + +
    + +
    + +
    +
    +

    Account Summary

    +
    + cash balance: +
    + number of holdings: +
    + total of holdings: +
    + sum of cash/holdings +
    + opening balance: +
    +
    +
    + $  + +
    + +
    + $  + +
    + $  + +
    + $  + +
    +
    +
    + current gain/(loss): + + $ + + +   + + +
    + + + + + + + + + + +
    +
    +
    + + + + + + + +
    + + + + +
    +
    +
    +
    +
    +
    + + +
    + \ No newline at end of file diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/tradehomeImg.jsp b/src/test/resources/test-applications/daytrader8/src/main/webapp/tradehomeImg.jsp new file mode 100644 index 00000000..3d7a2990 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/webapp/tradehomeImg.jsp @@ -0,0 +1,267 @@ + + + + + +Welcome to DayTrader + + + + + <%@ page + import="java.util.Collection, + java.util.Iterator, + java.math.BigDecimal,com.ibm.websphere.samples.daytrader.entities.AccountDataBean,com.ibm.websphere.samples.daytrader.entities.OrderDataBean,com.ibm.websphere.samples.daytrader.util.FinancialUtils" + session="true" isThreadSafe="true" isErrorPage="false"%> + + + + + + + + + + + + + + + + + + + + + + <% + Collection closedOrders = (Collection) request.getAttribute("closedOrders"); + if ((closedOrders != null) && (closedOrders.size() > 0)) { + %> + + + + + + + <% + } + %> + +
    DayTrader HomeDayTrader

    <%=new java.util.Date()%>
    + Alert: The + following Order(s) have completed. +
    + + + <% + Iterator it = closedOrders.iterator(); + while (it.hasNext()) { + OrderDataBean closedOrderData = (OrderDataBean) it.next(); + %> + + + + + + + + + + + + + + + + + + + + + <% + } + %> + + +
    order + IDorder + statuscreation + datecompletion + datetxn + feetypesymbolquantity
    <%=closedOrderData.getOrderID()%><%=closedOrderData.getOrderStatus()%><%=closedOrderData.getOpenDate()%><%=closedOrderData.getCompletionDate()%><%=closedOrderData.getOrderFee()%><%=closedOrderData.getOrderType()%><%=FinancialUtils.printQuoteLink(closedOrderData.getSymbol())%><%=closedOrderData.getQuantity()%>
    +
    + + + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Welcome +  <%=accountData.getProfileID()%>, +
    User + Statistics
    account + ID:
    +
    account + created:
    total + logins:
    session + created:
    <%=accountData.getAccountID()%>
    + <%=accountData.getCreationDate()%>
    + <%=accountData.getLoginCount()%>
    + <%=(java.util.Date) session.getAttribute("sessionCreationDate")%>
    Account + Summary
    cash + balance:
    number + of holdings:
    total + of holdings:
    sum of + cash/holdings
    opening + balance:
    +
    +
    + <% + BigDecimal openBalance = accountData.getOpenBalance(); + BigDecimal balance = accountData.getBalance(); + BigDecimal holdingsTotal = FinancialUtils.computeHoldingsTotal(holdingDataBeans); + BigDecimal sumOfCashHoldings = balance.add(holdingsTotal); + BigDecimal gain = FinancialUtils.computeGain(sumOfCashHoldings, openBalance); + BigDecimal gainPercent = FinancialUtils.computeGainPercent(sumOfCashHoldings, openBalance); + %>$<%=balance%>
    <%=holdingDataBeans.size()%>
    + $<%=holdingsTotal%>
    $<%=sumOfCashHoldings%>
    + $<%=openBalance%>
    + +
    +
    current + gain/(loss):$ <%=FinancialUtils.printGainHTML(gain)%> + <%=FinancialUtils.printGainPercentHTML(gainPercent)%>
    +

    + + + + + + + + + + + + + + + + +
    + + + + + + + +
    Note: Click any symbol + for a quote or to trade. + +
    + + +
    +
    +
    DayTrader HomeDayTrader
    + + diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/web_prmtv.html b/src/test/resources/test-applications/daytrader8/src/main/webapp/web_prmtv.html new file mode 100644 index 00000000..fa2b5837 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/webapp/web_prmtv.html @@ -0,0 +1,449 @@ + + + + + + +Web Primitives + + + + +
    + + + + + + + +
    +

    Web and EJB Primitive Tests

    +
    +
    + + + + + + + + + + + +
    Primitive Test Suite
    +

    The DayTrader performance benchmark sample + provides a suite of web primitives. These + primitives singularly test key operations in the + enterprise Java programming model. Links to each + of the web primitive tests are provided below + along with a description of each operation.

    +

    + Note that some primitives below can have their + main operations repeated. These operations are + marked with a red *. + In order to adjust the repetition, change the + primitive iteration value in the Trade + configuration page. +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Web Container ping suite
    PingHtmlPingHtml is the most + basic operation providing access to a simple + "Hello World" page of static HTML.
    Explicit GCInvoke Garbage + Collection on AppServer. Reports heap statistics + after the GC has completed.
    PingServletPingServlet tests + fundamental dynamic HTML creation through server + side servlet processing.
    PingServletCDIPingServletCDI tests various simple CDI invocations.
    PingServletCDIBeanManagerViaJNDIPingServletCDIBeanManagerViaJNDI tests getting the BeanManager with JNDI.
    PingServletCDIBeanManagerViaCDICurrentPingServletCDIBeanManagerViaCDICurrent tests getting the BeanManager with the CDI spi.
    PingServletWriter + PingServletWriter + extends PingServlet by using a PrintWriter for + formatted output vs. the output stream used by + PingServlet.
    PingServlet2Include*PingServlet2Include + tests response inclusion. Servlet 1 includes the + response of Servlet 2.
    PingServlet2ServletPingServlet2Servlet + tests request dispatching. Servlet 1, the + controller, creates a new JavaBean object + forwards the request with the JavaBean added to + Servlet 2. Servlet 2 obtains access to the + JavaBean through the Servlet request object and + provides dynamic HTML output based on the + JavaBean data.
    PingJSPPingJSP tests a direct + call to JavaServer Page providing server-side + dynamic HTML through JSP scripting.
    PingJSPELPingJSPEL tests a direct + call to JavaServer Page providing server-side + dynamic HTML through JSP scripting and the usage + of the new JSP 2.0 Expression Language.
    PingServlet2JSPPingServlet2JSP tests a + commonly used design pattern, where a request is + issued to servlet providing server side control + processing. The servlet creates a JavaBean + object with dynamically set attributes and + forwards the bean to the JSP through a + RequestDispatcher The JSP obtains access to the + JavaBean and provides formatted display with + dynamic HTML output based on the JavaBean data.
    PingServlet2PDFPingServlet2PDF tests a + call to a servlet which displays the contents of + a PDF Document (~1 MB in file size).
    PingServlet2DBPingServlet2DB tests a + call to a servlet which makes a JDBC connection + to the database.
    PingJSFPingJSF tests a + call to a JSF Facelet which performs a lookup + of quotes.
    PingCDIJSFPingCDIJSF tests a MangedBean called from a jsf page.
    PingHTTPSession1 + PingHTTPSession1 - SessionID + tests fundamental HTTP session function by + creating a unique session ID for each individual + user. The ID is stored in the users session and + is accessed and displayed on each user request. +
    PingHTTPSession2PingHTTPSession2 session + create/destroy further extends the previous + test by invalidating the HTTP Session on every + 5th user access. This results in testing + HTTPSession create and destroy +
    PingHTTPSession3PingHTTPSession3 large + session object tests the servers ability to + manage and persist large HTTPSession data + objects. The servlet creates a large custom java + object. The class contains multiple data fields + and results in 2048 bytes of data. This large + session object is retrieved and stored to the + session on each user request. +
    PingJDBCRead*PingJDBCRead tests + fundamental servlet to JDBC access to a database + performing a single-row read using a prepared + SQL statment.
    PingJDBCRead2JSP*PingJDBCRead2JSP tests + fundamental servlet to JDBC access to a database + performing a single-row read using a prepared + SQL statment, then displays the output in a JSP.
    PingJDBCWrite*PingJDBCRead tests + fundamental servlet to JDBC access to a database + performing a single-row write using a prepared + SQL statment.
    PingServlet2JNDI*PingServlet2JNDI tests + the fundamental J2EE operation of a servlet + allocating a JNDI context and performing a JNDI + lookup of a JDBC DataSource.
    PingUpgradeServletPingUpgradeServlet tests a simple UpgradeHandler request. JMeter is needed for testing.
    PingWebSocketTextSyncPingWebSocketTextSync tests a simple synchronous WebSocket with text.
    PingWebSocketTextAsyncPingWebSocketTextAsync tests a simple asynchronous WebSocket with text.
    PingWebSocketBinaryPingWebSocketBinary tests a simple WebSocket with binary data.
    PingWebSocketJsonPingWebSocketJson tests a WebSocket with a JSON Decoder and Encoder.
    PingManagedThreadPingManagedThread tests a ManagedThreadFactory inside an asynchronous servlet.
    PingManagedExecutorPingManagedExecutor tests the ManagedExecutorService inside an asynchronous servlet.
    + + PingJSONP + + + PingJSONP tests generating and parsing JSON. +
    EJB 3 Container ping + suite
    PingServlet2Session*PingServlet2Session + tests key function of a servlet call to a remote + stateless Session EJB. The Session EJB performs + a simple calculation and returns the result
    PingServlet2Entity*
    PingServlet2Entity tests key function of a + servlet call to an EJB 3.0 Container Managed Entity. In this test the + EJB entity represents a single row in the database table.
    PingServlet2Session2Entity*This tests the full + servlet to Session EJB to Entity EJB path to + retrieve a single row from the database.
    PingServlet2Session2Entity2JSP*This tests the full + servlet to Session EJB to Entity EJB path to + retrieve a single row from the database and + displays the output in a JSP.
    PingServlet2Session2
    + EntityCollection +
    *
    This test extends the + previous EJB Entity test by calling a Session + EJB which uses a finder method on the Entity + that returns a collection of Entity objects. + Each object is displayed by the servlet.
    PingServlet2Session2CMROne2One*This test drives an + Entity EJB to get another Entity EJB's data + through an EJB 3.0 CMR One to One relationship.
    PingServlet2Session2CMROne2Many*This test drives an + Entity EJB to get another Entity EJB's data + through an EJB 3.0 CMR One to Many relationship.
    PingServlet2MDBQueue*PingServlet2MDBQueue + drives messages to a Queue based Message Driven + EJB (MDB). Each request to the servlet posts a + message to the Queue. The MDB receives the + message asynchronously and prints message + delivery statistics on each 100th message. Note: Not intended + for performance testing. + +
    PingServlet2MDBTopic*PingServlet2MDBTopic + drives messages to a Topic based + Publish/Subscribe Message Driven EJB (MDB). Each + request to the servlet posts a message to the + Topic. The TradeStreamMDB receives the message + asynchronously and prints message delivery + statistics on each 100th message. Other + subscribers to the Topic will also receive the + messages. Note: + Not intended for performance testing. +
    PingServlet2TwoPhase*PingServlet2TwoPhase + drives a Session EJB which invokes an Entity EJB + with findByPrimaryKey (DB Access) followed by + posting a message to an MDB through a JMS Queue + (Message access). These operations are wrapped + in a global 2-phase transaction and commit.
    + + diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/web_prmtv.xhtml b/src/test/resources/test-applications/daytrader8/src/main/webapp/web_prmtv.xhtml new file mode 100644 index 00000000..3cfda53c --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/webapp/web_prmtv.xhtml @@ -0,0 +1,584 @@ + + + + + DayTrader Primitives + + + + +
    + + +
    + +
    + + + + + + + +
    +

    Web Primitive Tests

    +
    + + + + + + + + + + +
    + + Primitive Test Suite + +
    +

    The DayTrader performance benchmark sample provides a suite of web primitives. These primitives singularly test key operations in the + enterprise Java programming model. Links to each of the web primitive tests are provided below along with a description of each operation.

    +

    + Note that some primitives below can have their main operations repeated. These operations are marked with a red + * + . In order to adjust the repetition, change the primitive iteration value in the Trade configuration page. + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + + Web Container ping suite + +
    + + + PingHtml + + + + PingHtml is the most basic operation providing access to a simple "Hello World" page of static HTML. +
    + + + Explicit GC + + + + Invoke Garbage Collection on AppServer. Reports heap statistics after the GC has completed. +
    + + + PingServlet + + + + PingServlet tests fundamental dynamic HTML creation through server side servlet processing. +
    PingServletCDIPingServletCDI tests + various simple CDI invocations.
    PingServletCDIBeanManagerViaJNDIPingServletCDIBeanManagerViaJNDI tests getting the BeanManager with JNDI.
    PingServletCDIBeanManagerViaCDICurrentIPingServletCDIBeanManagerViaCDICurrent tests getting the BeanManager with SPI.
    + + + PingServletWriter + + + + PingServletWriter extends PingServlet by using a PrintWriter for formatted output vs. the output stream used by + PingServlet. +
    + + + PingServlet2Include + + + * + + PingServlet2Include tests response inclusion. Servlet 1 includes the response of Servlet 2. +
    + + + PingServlet2Servlet + + + + PingServlet2Servlet tests request dispatching. Servlet 1, the controller, creates a new JavaBean object forwards the + request with the JavaBean added to Servlet 2. Servlet 2 obtains access to the JavaBean through the Servlet request object and provides + dynamic HTML output based on the JavaBean data. +
    + + PingJSP + + + PingJSP tests a direct call to JavaServer Page providing server-side dynamic HTML through JSP scripting. +
    + + PingJSPEL + + + PingJSPEL tests a direct call to JavaServer Page providing server-side dynamic HTML through JSP scripting and the usage + of the new JSP 2.0 Expression Language. +
    + + PingServlet2JSP + + + PingServlet2JSP tests a commonly used design pattern, where a request is issued to servlet providing server side + control processing. The servlet creates a JavaBean object with dynamically set attributes and forwards the bean to the JSP through a + RequestDispatcher The JSP obtains access to the JavaBean and provides formatted display with dynamic HTML output based on the JavaBean data. +
    + + PingServlet2PDF + + + PingServlet2PDF tests a call to a servlet which displays the contents of a PDF Document (~1 MB in file size). +
    + + PingServlet2DB + + + PingServlet2DB tests a call to a servlet which makes a JDBC connection to the database. +
    + + PingJSF + + + PingJSF tests a call to a JSF Facelet which performs a lookup of quotes. +
    PingCDIJSFPingCDIJSF tests a MangedBean called from a jsf page.
    + + PingHTTPSession1 + + + + PingHTTPSession1 - + SessionID + tests fundamental HTTP session function by creating a unique session ID for each individual user. The ID is stored in the users session and + is accessed and displayed on each user request. + +
    + + PingHTTPSession2 + + + + PingHTTPSession2 + session create/destroy + further extends the previous test by invalidating the HTTP Session on every 5th user access. This results in testing HTTPSession create and + destroy + +
    + + PingHTTPSession3 + + + + PingHTTPSession3 + large session object + tests the servers ability to manage and persist large HTTPSession data objects. The servlet creates a large custom java object. The class + contains multiple data fields and results in 2048 bytes of data. This large session object is retrieved and stored to the session on each + user request. + +
    + + PingJDBCRead + + * + + PingJDBCRead tests fundamental servlet to JDBC access to a database performing a single-row read using a prepared SQL + statment. +
    + + PingJDBCWrite + + * + + PingJDBCRead tests fundamental servlet to JDBC access to a database performing a single-row write using a prepared SQL + statment. +
    + + PingServlet2JNDI + + * + + PingServlet2JNDI tests the fundamental J2EE operation of a servlet allocating a JNDI context and performing a JNDI + lookup of a JDBC DataSource. +
    PingUpgradeServletPingUpgradeServlet tests a simple UpgradeHandler request. JMeter is needed for testing.
    PingWebSocketTextSyncPingWebSocketTextSync tests a simple synchronous WebSocket with text.
    PingWebSocketTextAsyncPingWebSocketTextAsync tests a simple asynchronous WebSocket with text.
    PingWebSocketBinaryPingWebSocketBinary tests a simple WebSocket with binary data.
    PingWebSocketJsonPingWebSocketJson tests a WebSocket with a JSON Decoder and Encoder.
    + + PingManagedThread + + + + PingManagedThread tests a ManagedThreadFactory inside an asynchronous servlet. +
    + + PingManagedExecutor + + + + PingManagedExecutor tests the ManagedExecutorService inside an asynchronous servlet. +
    + + PingJSONP + + + + PingJSONP tests generating and parsing JSON. +
    + + EJB 3 Container ping suite + +
    + + PingServlet2Session + + * + + PingServlet2Session tests key function of a servlet call to a remote stateless Session EJB. The Session EJB performs a + simple calculation and returns the result +
    + + PingServlet2SessionLocal + + * + + PingServlet2SessionLocal tests key function of a servlet call to a local stateless Session EJB. The Session EJB + performs a simple calculation and returns the result +
    + + PingServlet2Session2Entity + + * + + This tests the full servlet to Session EJB to Entity EJB path to retrieve a single row from the database. +
    + + PingServlet2Session2Entity2JSP + + * + + This tests the full servlet to Session EJB to Entity EJB path to retrieve a single row from the database and displays + the output in a JSP. +
    + + + PingServlet2Session2 +
    + EntityCollection +
    +
    + * +
    + This test extends the previous EJB Entity test by calling a Session EJB which uses a finder method on the Entity that + returns a collection of Entity objects. Each object is displayed by the servlet. +
    + + PingServlet2Session2CMROne2One + + * + + This test drives an Entity EJB to get another Entity EJB's data through an EJB 3.0 CMR One to One relationship. +
    + + PingServlet2Session2CMROne2Many + + * + + This test drives an Entity EJB to get another Entity EJB's data through an EJB 3.0 CMR One to Many relationship. +
    + + PingServlet2Session2JDBC + + * + + This tests the full servlet to Session EJB to JDBC path to retrieve a single row from the database. +
    + + + PingServlet2Session2 +
    + JDBCCollection +
    +
    + * +
    + This test extends the previous JDBC test by calling a Session EJB to JDBC path which returns multiple rows from the + database. +
    + + PingServlet2MDBQueue + + * + + + PingServlet2MDBQueue drives messages to a Queue based Message Driven EJB (MDB). Each request to the servlet posts a message to the Queue. The + MDB receives the message asynchronously and prints message delivery statistics on each 100th message. + + Note: + Not intended for performance testing. + + +
    + + PingServlet2MDBTopic + + * + + + PingServlet2MDBTopic drives messages to a Topic based Publish/Subscribe Message Driven EJB (MDB). Each request to the servlet posts a message + to the Topic. The TradeStreamMDB receives the message asynchronously and prints message delivery statistics on each 100th message. Other + subscribers to the Topic will also receive the messages. + + Note: + Not intended for performance testing. + + +
    + + PingServlet2TwoPhase + + * + + PingServlet2TwoPhase drives a Session EJB which invokes an Entity EJB with findByPrimaryKey (DB Access) followed by + posting a message to an MDB through a JMS Queue (Message access). These operations are wrapped in a global 2-phase transaction and commit. +
    +
    +
    +
    + +
    + \ No newline at end of file diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/welcome.jsp b/src/test/resources/test-applications/daytrader8/src/main/webapp/welcome.jsp new file mode 100644 index 00000000..f2fc601c --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/webapp/welcome.jsp @@ -0,0 +1,133 @@ + + + + +DayTrader Login + + + + + <%@ page session="false"%> + + + + + + + +
    DayTrader + LoginDayTrader
    + + + + + + + + +
    + <% + String results; + results = (String) request.getAttribute("results"); + if (results != null) + out.print(results); + %> +
    +
    + + + + + + + + + + + + + +
    Log in +
    Username +              +     Password       +               +               +    
    +
    +       +     +
    +
    + + + + + + + + + + + + + + + + + + + + +
    +
    +
    First + time user?  Please Register
    +
    + Register With DayTrader +
    +
    +
    +
    + + + + + + + + + + + + + +
    +
    +
    DayTrader + LoginDayTrader
    + + diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/welcome.xhtml b/src/test/resources/test-applications/daytrader8/src/main/webapp/welcome.xhtml new file mode 100644 index 00000000..e0577f55 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/webapp/welcome.xhtml @@ -0,0 +1,93 @@ + + + + + DayTrader Login + + + + +
    + +
    + +
    + + + + + + + +
    + +
    +

    Log in to DayTrader

    +
    Username +
    + + + + +
    +
    Password +
    + + + +
    +
    + + +
    +
    Don't have an account?
    + Register With DayTrader +
    +
    +
    +
    + +
    + \ No newline at end of file diff --git a/src/test/resources/test-applications/daytrader8/src/main/webapp/welcomeImg.jsp b/src/test/resources/test-applications/daytrader8/src/main/webapp/welcomeImg.jsp new file mode 100644 index 00000000..252a22e6 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/webapp/welcomeImg.jsp @@ -0,0 +1,132 @@ + + + + +DayTrader Login + + + + + <%@ page session="false"%> + + + + + + + +
    DayTrader LoginDayTrader
    + + + + + + + + + +
    + <% + String results; + results = (String) request.getAttribute("results"); + if (results != null) + out.print(results); + %> +
    +
    + + + + + + + + + + + + + +
    Log in +
    Username +              +     Password       +               +               +    
    +
    +       +     +
    +
    + + + + + + + + + + + + + + + + + + + + +
    +
    +
    First + time user?  Please Register
    +
    + Register With DayTrader +
    +
    +
    +
    + + + + + + + + + + +

    DayTrader + LoginDayTrader
    + + diff --git a/src/test/resources/test-applications/daytrader8/zos_db2_files/RUNSTAT.JCL b/src/test/resources/test-applications/daytrader8/zos_db2_files/RUNSTAT.JCL new file mode 100644 index 00000000..07579d73 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/zos_db2_files/RUNSTAT.JCL @@ -0,0 +1,23 @@ +//TDRUNSTA JOB MSGCLASS=H,MSGLEVEL=(1,1),REGION=0M,NOTIFY=&SYSUID. +//* ----------------------- // +//* DB2V11.JUN2915.SDSNEXIT +//* RUNSTATS +//* +//STEP1 EXEC PGM=DSNUTILB,PARM='DB94,STAA1',DYNAMNBR=25 +//STEPLIB DD DISP=SHR,DSN=DB2V11.JUN2915.SDSNEXIT +//SYSUT1 DD UNIT=SYSDA,SPACE=(CYL,(600,50)) +//SORTWK01 DD UNIT=SYSDA,SPACE=(CYL,(600,50)) +//SORTWK02 DD UNIT=SYSDA,SPACE=(CYL,(600,50)) +//SORTWK03 DD UNIT=SYSDA,SPACE=(CYL,(600,50)) +//SORTWK04 DD UNIT=SYSDA,SPACE=(CYL,(600,50)) +//SYSREC DD UNIT=SYSDA,SPACE=(CYL,(599,49)) +//SYSPRINT DD SYSOUT=* +//UTPRINT DD SYSOUT=* +//SYSUDUMP DD SYSOUT=* +//SYSIN DD * + RUNSTATS TABLESPACE TRADE.TRADETS1 INDEX ALL TABLE ALL REPORT YES + RUNSTATS TABLESPACE TRADE.TRADETS2 INDEX ALL TABLE ALL REPORT YES + RUNSTATS TABLESPACE TRADE.TRADETS3 INDEX ALL TABLE ALL REPORT YES + RUNSTATS TABLESPACE TRADE.TRADETS4 INDEX ALL TABLE ALL REPORT YES + RUNSTATS TABLESPACE TRADE.TRADETS5 INDEX ALL TABLE ALL REPORT YES + RUNSTATS TABLESPACE TRADE.TRADETS6 INDEX ALL TABLE ALL REPORT YES diff --git a/src/test/resources/test-applications/daytrader8/zos_db2_files/dbbind.jcl b/src/test/resources/test-applications/daytrader8/zos_db2_files/dbbind.jcl new file mode 100644 index 00000000..261cabed --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/zos_db2_files/dbbind.jcl @@ -0,0 +1,42 @@ +//DBINDS20 JOB MSGCLASS=H,NOTIFY=&SYSUID.,REGION=0M +//*********************************************************************/00010000 +//* JOB NAME = DSNTIJSG */00020000 +//* */00030000 +//* DESCRIPTIVE NAME = INSTALLATION JOB STREAM */00040000 +//* */00050000 +//*********************************************************************/00290000 +//JOBLIB DD DISP=SHR, 00300000 +// DSN=DB211.D121916.SDSNLOAD 00310000 +//* 00430000 +//DSNTIRU EXEC PGM=IKJEFT01,DYNAMNBR=20 00440000 +//SYSTSPRT DD SYSOUT=* 00450000 +//SYSPRINT DD SYSOUT=* 00460000 +//SYSUDUMP DD SYSOUT=* 00470000 +//SYSTSIN DD * 00480000 + DSN SYSTEM(DB90) 00490000 + REBIND PACKAGE(NULLID.SYSLH100) ISOLATION(CS) CURRENTDATA (NO) 00728260 + REBIND PACKAGE(NULLID.SYSLH200) CURRENTDATA(NO) ISOLATION(CS) 00728260 + REBIND PACKAGE(NULLID.SYSLH300) CURRENTDATA(NO) ISOLATION(CS) 00728260 + REBIND PACKAGE(NULLID.SYSLH400) CURRENTDATA(NO) ISOLATION(CS) 00728260 + REBIND PACKAGE(NULLID.SYSLN100) CURRENTDATA(NO) ISOLATION(CS) 00728260 + REBIND PACKAGE(NULLID.SYSLN200) CURRENTDATA(NO) ISOLATION(CS) 00728260 + REBIND PACKAGE(NULLID.SYSLN300) CURRENTDATA(NO) ISOLATION(CS) 00728260 + REBIND PACKAGE(NULLID.SYSLN400) CURRENTDATA(NO) ISOLATION(CS) 00728260 + REBIND PACKAGE(NULLID.SYSLH101) CURRENTDATA(NO) ISOLATION(CS) 00728260 + REBIND PACKAGE(NULLID.SYSLH201) CURRENTDATA(NO) ISOLATION(CS) 00728260 + REBIND PACKAGE(NULLID.SYSLH301) CURRENTDATA(NO) ISOLATION(CS) 00728260 + REBIND PACKAGE(NULLID.SYSLH401) CURRENTDATA(NO) ISOLATION(CS) 00728260 + REBIND PACKAGE(NULLID.SYSLN101) CURRENTDATA(NO) ISOLATION(CS) 00728260 + REBIND PACKAGE(NULLID.SYSLN201) CURRENTDATA(NO) ISOLATION(CS) 00728260 + REBIND PACKAGE(NULLID.SYSLN301) CURRENTDATA(NO) ISOLATION(CS) 00728260 + REBIND PACKAGE(NULLID.SYSLN401) CURRENTDATA(NO) ISOLATION(CS) 00728260 + REBIND PACKAGE(NULLID.SYSLH102) CURRENTDATA(NO) ISOLATION(CS) 00728260 + REBIND PACKAGE(NULLID.SYSLH202) CURRENTDATA(NO) ISOLATION(CS) 00728260 + REBIND PACKAGE(NULLID.SYSLH302) CURRENTDATA(NO) ISOLATION(CS) 00728260 + REBIND PACKAGE(NULLID.SYSLH402) CURRENTDATA(NO) ISOLATION(CS) 00728260 + REBIND PACKAGE(NULLID.SYSLN102) CURRENTDATA(NO) ISOLATION(CS) 00728260 + REBIND PACKAGE(NULLID.SYSLN202) CURRENTDATA(NO) ISOLATION(CS) 00728260 + REBIND PACKAGE(NULLID.SYSLN302) CURRENTDATA(NO) ISOLATION(CS) 00728260 + REBIND PACKAGE(NULLID.SYSLN402) CURRENTDATA(NO) ISOLATION(CS) 00728260 + REBIND PACKAGE(NULLID.SYSSTAT) CURRENTDATA(NO) ISOLATION(CS) 00728260 + END 00728840 diff --git a/src/test/resources/test-applications/daytrader8/zos_db2_files/dbtable.jcl b/src/test/resources/test-applications/daytrader8/zos_db2_files/dbtable.jcl new file mode 100644 index 00000000..5398fa74 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/zos_db2_files/dbtable.jcl @@ -0,0 +1,255 @@ +//TDBIGS10 JOB MSGCLASS=H,MSGLEVEL=(1,1),NOTIFY=&SYSUID +//STEP01 EXEC PGM=IKJEFT01,DYNAMNBR=20 +//STEPLIB DD DSN=DB2V11.JUN2915.SDSNLOAD,DISP=SHR +//SYSTSPRT DD SYSOUT=* +//SYSUDUMP DD SYSOUT=* +//SYSPRINT DD SYSOUT=* +//SYSTSIN DD * + DSN SYSTEM(DB90) + RUN PROGRAM(DSNTIAD) PLAN(DSNTIA11) - + LIB('DB90.RUNLIB.LOAD') + END +//SYSIN DD * + + SET CURRENT SQLID='WSADMIN'; + DROP TABLESPACE TRADEDB.TRADETS1; + DROP TABLESPACE TRADEDB.TRADETS2; + DROP TABLESPACE TRADEDB.TRADETS3; + DROP TABLESPACE TRADEDB.TRADETS4; + DROP TABLESPACE TRADEDB.TRADETS5; + DROP TABLESPACE TRADEDB.TRADETS6; + DROP DATABASE TRADEDB; + DROP STOGROUP TRADESG; + COMMIT; +//* LIB('DB2V11.JUN2915.RUNLIB.LOAD') +//STEP02 EXEC PGM=IKJEFT01,DYNAMNBR=20 +//STEPLIB DD DSN=DB2V11.JUN2915.SDSNLOAD,DISP=SHR +//SYSTSPRT DD SYSOUT=* +//SYSUDUMP DD SYSOUT=* +//SYSPRINT DD SYSOUT=* +//SYSTSIN DD * + DSN SYSTEM(DB90) + RUN PROGRAM(DSNTIAD) PLAN(DSNTIA11) - + LIB('DB90.RUNLIB.LOAD') + END +//SYSIN DD * + + SET CURRENT SQLID='WSADMIN'; + + CREATE STOGROUP TRADESG VOLUMES(WSPRF4) VCAT TRADESP6; + COMMIT; + + CREATE DATABASE TRADEDB + STOGROUP TRADESG + BUFFERPOOL BP2; + + COMMIT WORK; + + CREATE TABLESPACE TRADETS1 IN TRADEDB + USING STOGROUP TRADESG + PRIQTY 15000 + SECQTY 5000 + ERASE NO + CLOSE NO + LOCKSIZE ROW + BUFFERPOOL BP4; + + CREATE TABLESPACE TRADETS2 IN TRADEDB + USING STOGROUP TRADESG + PRIQTY 15000 + SECQTY 5000 + ERASE NO + CLOSE NO + LOCKSIZE ROW + BUFFERPOOL BP5; + + CREATE TABLESPACE TRADETS3 IN TRADEDB + USING STOGROUP TRADESG + PRIQTY 15000 + SECQTY 5000 + ERASE NO + CLOSE NO + LOCKSIZE ROW + BUFFERPOOL BP6; + + CREATE TABLESPACE TRADETS4 IN TRADEDB + USING STOGROUP TRADESG + PRIQTY 15000 + SECQTY 5000 + ERASE NO + CLOSE NO + LOCKSIZE ROW + BUFFERPOOL BP7; + + CREATE TABLESPACE TRADETS5 IN TRADEDB + USING STOGROUP TRADESG + PRIQTY 128 + SECQTY 128 + ERASE NO + CLOSE NO + LOCKSIZE ROW + BUFFERPOOL BP3; + + CREATE TABLESPACE TRADETS6 IN TRADEDB + USING STOGROUP TRADESG + PRIQTY 5000 + SECQTY 1000 + ERASE NO + CLOSE NO + LOCKSIZE ROW + BUFFERPOOL BP4; + + CREATE TABLE HOLDINGEJB + (PURCHASEPRICE DECIMAL(14, 2), + HOLDINGID INTEGER NOT NULL, + QUANTITY DOUBLE NOT NULL, + PURCHASEDATE TIMESTAMP, + ACCOUNT_ACCOUNTID INTEGER, + QUOTE_SYMBOL VARCHAR(250), + CONSTRAINT PK_HOLDINGEJB PRIMARY KEY(HOLDINGID)) + IN TRADEDB.TRADETS1; + + CREATE UNIQUE INDEX HOLDINGEJBIDX + ON HOLDINGEJB(HOLDINGID) + USING STOGROUP TRADESG + PRIQTY 5000 + SECQTY 1000 + CLOSE NO + BUFFERPOOL BP8; + + CREATE INDEX HOLDINGACTIDX + ON HOLDINGEJB(ACCOUNT_ACCOUNTID) + USING STOGROUP TRADESG + PRIQTY 5000 + SECQTY 1000 + CLOSE NO + BUFFERPOOL BP9; + + CREATE TABLE ACCOUNTPROFILEEJB + (ADDRESS VARCHAR(250), + PASSWD VARCHAR(250), + USERID VARCHAR(250) NOT NULL, + EMAIL VARCHAR(250), + CREDITCARD VARCHAR(250), + FULLNAME VARCHAR(250), + CONSTRAINT PK_ACCOUNTPROFILE1 PRIMARY KEY(USERID)) + IN TRADEDB.TRADETS2; + + CREATE UNIQUE INDEX ACCTPROFILEEJBIDX + ON ACCOUNTPROFILEEJB(USERID) + USING STOGROUP TRADESG + PRIQTY 5000 + SECQTY 1000 + CLOSE NO + BUFFERPOOL BP10; + + CREATE TABLE QUOTEEJB + (LOW DECIMAL(14, 2), + OPEN1 DECIMAL(14, 2), + VOLUME DOUBLE NOT NULL, + PRICE DECIMAL(14, 2), + HIGH DECIMAL(14, 2), + COMPANYNAME VARCHAR(255), + SYMBOL VARCHAR(250) NOT NULL, + CHANGE1 DOUBLE NOT NULL, + CONSTRAINT PK_QUOTEEJB PRIMARY KEY(SYMBOL)) + IN TRADE.TRADETS6; + + CREATE UNIQUE INDEX QUOTEEJBIDX + ON QUOTEEJB(SYMBOL) + USING STOGROUP TRADESG + PRIQTY 2500 + SECQTY 1000 + CLOSE NO + BUFFERPOOL BP11; + + CREATE TABLE KEYGENEJB + (KEYVAL INTEGER NOT NULL, + KEYNAME VARCHAR(250) NOT NULL, + CONSTRAINT PK_KEYGENEJB PRIMARY KEY(KEYNAME)) + IN TRADEDB.TRADETS5; + + CREATE UNIQUE INDEX KEYGENEJBIDX + ON KEYGENEJB(KEYNAME) + USING STOGROUP TRADESG + PRIQTY 128 + SECQTY 64 + CLOSE NO + BUFFERPOOL BP12; + + CREATE TABLE ACCOUNTEJB + (CREATIONDATE TIMESTAMP, + OPENBALANCE DECIMAL(14, 2), + LOGOUTCOUNT INTEGER NOT NULL, + BALANCE DECIMAL(14, 2), + ACCOUNTID INTEGER NOT NULL, + LASTLOGIN TIMESTAMP, + LOGINCOUNT INTEGER NOT NULL, + PROFILE_USERID VARCHAR(250), + CONSTRAINT PK_ACCOUNTEJB PRIMARY KEY(ACCOUNTID)) + IN TRADEDB.TRADETS4; + + + CREATE UNIQUE INDEX ACCOUNTEJBIDX + ON ACCOUNTEJB(ACCOUNTID) + USING STOGROUP TRADESG + PRIQTY 5000 + SECQTY 1000 + CLOSE NO + BUFFERPOOL BP8; + + CREATE UNIQUE INDEX ACCOUNTPUSRIDX + ON ACCOUNTEJB(PROFILE_USERID) + USING STOGROUP TRADESG + PRIQTY 5000 + SECQTY 1000 + CLOSE NO + BUFFERPOOL BP9; + + CREATE TABLE ORDEREJB + (ORDERFEE DECIMAL(14, 2), + COMPLETIONDATE TIMESTAMP, + ORDERTYPE VARCHAR(250), + ORDERSTATUS VARCHAR(250), + PRICE DECIMAL(14, 2), + QUANTITY DOUBLE NOT NULL, + OPENDATE TIMESTAMP, + ORDERID INTEGER NOT NULL, + ACCOUNT_ACCOUNTID INTEGER, + QUOTE_SYMBOL VARCHAR(250), + HOLDING_HOLDINGID INTEGER, + CONSTRAINT PK_ORDEREJB PRIMARY KEY(ORDERID)) + IN TRADEDB.TRADETS3; + + CREATE UNIQUE INDEX ORDEREJBIDX + ON ORDEREJB(ORDERID) + USING STOGROUP TRADESG + PRIQTY 5000 + SECQTY 1000 + CLOSE NO + BUFFERPOOL BP10; + + CREATE INDEX ORDEREACTIDX + ON ORDEREJB(ACCOUNT_ACCOUNTID) + USING STOGROUP TRADESG + PRIQTY 5000 + SECQTY 1000 + CLOSE NO + BUFFERPOOL BP11; + + CREATE INDEX ORDEREHLDIDX + ON ORDEREJB(HOLDING_HOLDINGID) + USING STOGROUP TRADESG + PRIQTY 5000 + SECQTY 1000 + CLOSE NO + BUFFERPOOL BP12; + + CREATE INDEX CLOSED_ORDERS + ON ORDEREJB(ORDERSTATUS,ACCOUNT_ACCOUNTID) + USING STOGROUP TRADESG + PRIQTY 5000 + SECQTY 1000 + CLOSE NO + BUFFERPOOL BP8; + COMMIT; diff --git a/src/test/resources/test-applications/plantsbywebsphere/build.gradle b/src/test/resources/test-applications/plantsbywebsphere/build.gradle index 4e731ea8..4e5b57ab 100644 --- a/src/test/resources/test-applications/plantsbywebsphere/build.gradle +++ b/src/test/resources/test-applications/plantsbywebsphere/build.gradle @@ -1,5 +1,7 @@ -apply plugin: 'war' -apply plugin: 'liberty' +plugins { + id 'war' + id 'io.openliberty.tools.gradle.Liberty' version '3.9.2' +} group = 'net.wasdev.sample' version = '1.0-SNAPSHOT' @@ -11,15 +13,6 @@ tasks.withType(JavaCompile) { options.encoding = 'UTF-8' } -buildscript { - repositories { - mavenCentral() - } - dependencies { - classpath 'net.wasdev.wlp.gradle.plugins:liberty-gradle-plugin:2.6.5' - } -} - repositories { mavenCentral() } @@ -29,9 +22,9 @@ configurations { } dependencies { - providedCompile 'javax:javaee-api:7.0' - serverLibs 'org.apache.derby:derby:10.11.1.1' - libertyRuntime 'com.ibm.websphere.appserver.runtime:wlp-javaee7:19.0.0.8' + providedCompile 'javax:javaee-api:7.0' + serverLibs 'org.apache.derby:derby:10.11.1.1' + libertyRuntime 'io.openliberty:openliberty-runtime:23.0.0.12' } task copyServerLibs(type: Copy) { @@ -40,14 +33,14 @@ task copyServerLibs(type: Copy) { into "${buildDir}/wlp/usr/servers/${rootProject.name}Server/lib" } -war.archiveName "${rootProject.name}.war" +war.archiveName = "${rootProject.name}.war" test.dependsOn 'war' test { defaultCharacterEncoding = "UTF-8" useJUnitPlatform() testLogging { - displayGranularity 1 + displayGranularity = 1 showStandardStreams = true showStackTraces = true exceptionFormat = 'full' @@ -56,16 +49,18 @@ test { } ext { - appUrl = "http://localhost:9080/${rootProject.name}/" + appUrl = "http://localhost:9080/${rootProject.name}/" } liberty { - server { - name = rootProject.name + 'Server' - dropins = [war] - looseApplication = false - configDirectory = file('src/main/liberty/config') - } + server { + name = rootProject.name + 'Server' + deploy { + apps = [war] // Correct syntax for deploying apps + } + looseApplication = false + configDirectory = file('src/main/liberty/config') + } } task openBrowser { @@ -80,12 +75,8 @@ libertyPackage.dependsOn 'libertyStop', 'copyServerLibs' libertyStart.dependsOn 'libertyStop', 'copyServerLibs' libertyRun.dependsOn 'libertyStop' libertyStart.doLast { - println "Application available at: ${appUrl}" + println "Application available at: ${appUrl}" } -libertyStart.dependsOn 'libertyStop' -libertyRun.dependsOn 'libertyStop' - task start { dependsOn 'libertyStart' } -task stop { dependsOn 'libertyStop' } - +task stop { dependsOn 'libertyStop' } \ No newline at end of file diff --git a/src/test/resources/test-applications/plantsbywebsphere/gradle/wrapper/gradle-wrapper.properties b/src/test/resources/test-applications/plantsbywebsphere/gradle/wrapper/gradle-wrapper.properties index 663c4485..070cb702 100644 --- a/src/test/resources/test-applications/plantsbywebsphere/gradle/wrapper/gradle-wrapper.properties +++ b/src/test/resources/test-applications/plantsbywebsphere/gradle/wrapper/gradle-wrapper.properties @@ -1,5 +1,5 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-7.6-bin.zip zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-5.2.1-bin.zip diff --git a/src/test/resources/test-applications/plantsbywebsphere/gradlew b/src/test/resources/test-applications/plantsbywebsphere/gradlew index cccdd3d5..af6708ff 100755 --- a/src/test/resources/test-applications/plantsbywebsphere/gradlew +++ b/src/test/resources/test-applications/plantsbywebsphere/gradlew @@ -28,7 +28,7 @@ APP_NAME="Gradle" APP_BASE_NAME=`basename "$0"` # Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. -DEFAULT_JVM_OPTS="" +DEFAULT_JVM_OPTS='"-Xmx64m"' # Use the maximum available, or set MAX_FD != -1 to use that value. MAX_FD="maximum" diff --git a/src/test/resources/test-applications/plantsbywebsphere/gradlew.bat b/src/test/resources/test-applications/plantsbywebsphere/gradlew.bat index f9553162..0f8d5937 100755 --- a/src/test/resources/test-applications/plantsbywebsphere/gradlew.bat +++ b/src/test/resources/test-applications/plantsbywebsphere/gradlew.bat @@ -1,84 +1,84 @@ -@if "%DEBUG%" == "" @echo off -@rem ########################################################################## -@rem -@rem Gradle startup script for Windows -@rem -@rem ########################################################################## - -@rem Set local scope for the variables with windows NT shell -if "%OS%"=="Windows_NT" setlocal - -set DIRNAME=%~dp0 -if "%DIRNAME%" == "" set DIRNAME=. -set APP_BASE_NAME=%~n0 -set APP_HOME=%DIRNAME% - -@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. -set DEFAULT_JVM_OPTS= - -@rem Find java.exe -if defined JAVA_HOME goto findJavaFromJavaHome - -set JAVA_EXE=java.exe -%JAVA_EXE% -version >NUL 2>&1 -if "%ERRORLEVEL%" == "0" goto init - -echo. -echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. -echo. -echo Please set the JAVA_HOME variable in your environment to match the -echo location of your Java installation. - -goto fail - -:findJavaFromJavaHome -set JAVA_HOME=%JAVA_HOME:"=% -set JAVA_EXE=%JAVA_HOME%/bin/java.exe - -if exist "%JAVA_EXE%" goto init - -echo. -echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% -echo. -echo Please set the JAVA_HOME variable in your environment to match the -echo location of your Java installation. - -goto fail - -:init -@rem Get command-line arguments, handling Windows variants - -if not "%OS%" == "Windows_NT" goto win9xME_args - -:win9xME_args -@rem Slurp the command line arguments. -set CMD_LINE_ARGS= -set _SKIP=2 - -:win9xME_args_slurp -if "x%~1" == "x" goto execute - -set CMD_LINE_ARGS=%* - -:execute -@rem Setup the command line - -set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar - -@rem Execute Gradle -"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS% - -:end -@rem End local scope for the variables with windows NT shell -if "%ERRORLEVEL%"=="0" goto mainEnd - -:fail -rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of -rem the _cmd.exe /c_ return code! -if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1 -exit /b 1 - -:mainEnd -if "%OS%"=="Windows_NT" endlocal - -:omega +@if "%DEBUG%" == "" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +set DIRNAME=%~dp0 +if "%DIRNAME%" == "" set DIRNAME=. +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS="-Xmx64m" + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if "%ERRORLEVEL%" == "0" goto init + +echo. +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto init + +echo. +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:init +@rem Get command-line arguments, handling Windows variants + +if not "%OS%" == "Windows_NT" goto win9xME_args + +:win9xME_args +@rem Slurp the command line arguments. +set CMD_LINE_ARGS= +set _SKIP=2 + +:win9xME_args_slurp +if "x%~1" == "x" goto execute + +set CMD_LINE_ARGS=%* + +:execute +@rem Setup the command line + +set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS% + +:end +@rem End local scope for the variables with windows NT shell +if "%ERRORLEVEL%"=="0" goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1 +exit /b 1 + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega From da55430fe2186d19dffeaccb852a155f29a5b1aa Mon Sep 17 00:00:00 2001 From: Rahul Krishna Date: Sat, 8 Feb 2025 11:29:26 -0500 Subject: [PATCH 05/12] Issue #109. Added a new field to the Callable object to now track all the crud operations that occur in it as an array list. Signed-off-by: Rahul Krishna --- src/main/java/com/ibm/cldk/SymbolTable.java | 6 ++++++ src/main/java/com/ibm/cldk/entities/Callable.java | 2 +- .../java/com/ibm/cldk/CodeAnalyzerIntegrationTest.java | 10 ---------- 3 files changed, 7 insertions(+), 11 deletions(-) diff --git a/src/main/java/com/ibm/cldk/SymbolTable.java b/src/main/java/com/ibm/cldk/SymbolTable.java index cbd2e761..ac2deb48 100644 --- a/src/main/java/com/ibm/cldk/SymbolTable.java +++ b/src/main/java/com/ibm/cldk/SymbolTable.java @@ -412,6 +412,12 @@ private static Pair processCallableDeclaration(CallableDeclara callableNode.setAccessedFields(getAccessedFields(body, classFields, typeName)); callableNode.setCallSites(getCallSites(body)); + callableNode.setCrudOperations( + callableNode.getCallSites().stream() + .map(CallSite::getCrudOperation) + .filter(Objects::nonNull) + .collect(Collectors.toList()) + ); callableNode.setVariableDeclarations(getVariableDeclarations(body)); callableNode.setCyclomaticComplexity(getCyclomaticComplexity(callableDecl)); diff --git a/src/main/java/com/ibm/cldk/entities/Callable.java b/src/main/java/com/ibm/cldk/entities/Callable.java index f854acff..7ad3daf2 100644 --- a/src/main/java/com/ibm/cldk/entities/Callable.java +++ b/src/main/java/com/ibm/cldk/entities/Callable.java @@ -25,7 +25,7 @@ public class Callable { private List accessedFields; private List callSites; private List variableDeclarations; + private List crudOperations = new ArrayList<>(); private int cyclomaticComplexity; private boolean isEntrypoint = false; - private List crudOperations = null; } diff --git a/src/test/java/com/ibm/cldk/CodeAnalyzerIntegrationTest.java b/src/test/java/com/ibm/cldk/CodeAnalyzerIntegrationTest.java index 25f478b6..d8d22666 100644 --- a/src/test/java/com/ibm/cldk/CodeAnalyzerIntegrationTest.java +++ b/src/test/java/com/ibm/cldk/CodeAnalyzerIntegrationTest.java @@ -1,8 +1,5 @@ package com.ibm.cldk; -import com.google.gson.Gson; -import com.google.gson.JsonElement; -import com.google.gson.JsonObject; import org.junit.jupiter.api.BeforeAll; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.Assertions; @@ -15,16 +12,9 @@ import java.io.File; import java.io.FileInputStream; import java.io.IOException; -import java.nio.file.Path; import java.nio.file.Paths; -import java.text.MessageFormat; -import java.util.Map; import java.util.Properties; -import static com.ibm.cldk.CodeAnalyzer.gson; -import static org.junit.Assert.assertTrue; -import static org.junit.jupiter.api.Assertions.assertThrows; - @Testcontainers @SuppressWarnings("resource") public class CodeAnalyzerIntegrationTest { From 2907fecbcf5e06e10c6d294ab7864d64ce52d2fb Mon Sep 17 00:00:00 2001 From: Rahul Krishna Date: Sat, 8 Feb 2025 11:51:04 -0500 Subject: [PATCH 06/12] Issue #109. Added a new field to the Callable object to now track all the crud operations and queries that occur in it as an array list. Also updated the test case to capture this. Signed-off-by: Rahul Krishna --- src/main/java/com/ibm/cldk/SymbolTable.java | 12 +++++-- .../java/com/ibm/cldk/entities/Callable.java | 1 + .../ibm/cldk/CodeAnalyzerIntegrationTest.java | 32 ++++++++++++++++--- 3 files changed, 39 insertions(+), 6 deletions(-) diff --git a/src/main/java/com/ibm/cldk/SymbolTable.java b/src/main/java/com/ibm/cldk/SymbolTable.java index ac2deb48..521144c4 100644 --- a/src/main/java/com/ibm/cldk/SymbolTable.java +++ b/src/main/java/com/ibm/cldk/SymbolTable.java @@ -418,6 +418,12 @@ private static Pair processCallableDeclaration(CallableDeclara .filter(Objects::nonNull) .collect(Collectors.toList()) ); + callableNode.setCrudQueries( + callableNode.getCallSites().stream() + .map(CallSite::getCrudQuery) + .filter(Objects::nonNull) + .collect(Collectors.toList()) + ); callableNode.setVariableDeclarations(getVariableDeclarations(body)); callableNode.setCyclomaticComplexity(getCyclomaticComplexity(callableDecl)); @@ -697,20 +703,22 @@ private static List getCallSites(Optional callableBody) { // Get argument string from the callsite List listOfArgumentStrings = methodCallExpr.getArguments().stream().map(Expression::toString).collect(Collectors.toList()); // Determine if this call site is potentially a CRUD operation. - CRUDOperation crudOperation = new CRUDOperation(); + CRUDOperation crudOperation = null; Optional crudOperationType = findCRUDOperation(declaringType, methodCallExpr.getNameAsString()); if (crudOperationType.isPresent()) { // We found a CRUD operation, so we need to populate the details of the call site this CRUD operation. int lineNumber = methodCallExpr.getRange().isPresent() ? methodCallExpr.getRange().get().begin.line : -1; + crudOperation = new CRUDOperation(); crudOperation.setLineNumber(lineNumber); crudOperation.setOperationType(crudOperationType.get()); } // Determine if this call site is potentially a CRUD query. - CRUDQuery crudQuery = new CRUDQuery(); + CRUDQuery crudQuery = null; Optional crudQueryType = findCRUDQuery(declaringType, methodCallExpr.getNameAsString(), Optional.of(listOfArgumentStrings)); if (crudQueryType.isPresent()) { // We found a CRUD query, so we need to populate the details of the call site this CRUD query. int lineNumber = methodCallExpr.getRange().isPresent() ? methodCallExpr.getRange().get().begin.line : -1; + crudQuery = new CRUDQuery(); crudQuery.setLineNumber(lineNumber); crudQuery.setQueryType(crudQueryType.get()); crudQuery.setQueryArguments(listOfArgumentStrings); diff --git a/src/main/java/com/ibm/cldk/entities/Callable.java b/src/main/java/com/ibm/cldk/entities/Callable.java index 7ad3daf2..20ffe3af 100644 --- a/src/main/java/com/ibm/cldk/entities/Callable.java +++ b/src/main/java/com/ibm/cldk/entities/Callable.java @@ -26,6 +26,7 @@ public class Callable { private List callSites; private List variableDeclarations; private List crudOperations = new ArrayList<>(); + private List crudQueries = new ArrayList<>(); private int cyclomaticComplexity; private boolean isEntrypoint = false; } diff --git a/src/test/java/com/ibm/cldk/CodeAnalyzerIntegrationTest.java b/src/test/java/com/ibm/cldk/CodeAnalyzerIntegrationTest.java index d8d22666..0abe51af 100644 --- a/src/test/java/com/ibm/cldk/CodeAnalyzerIntegrationTest.java +++ b/src/test/java/com/ibm/cldk/CodeAnalyzerIntegrationTest.java @@ -15,6 +15,7 @@ import java.nio.file.Paths; import java.util.Properties; + @Testcontainers @SuppressWarnings("resource") public class CodeAnalyzerIntegrationTest { @@ -165,9 +166,32 @@ void shouldBeAbleToDetectCRUDOperationsAndQueriesForPlantByWebsphere() throws Ex "--input=/test-applications/plantsbywebsphere", "--analysis-level=1", "--verbose" ); - Assertions.assertTrue(runCodeAnalyzerOnPlantsByWebsphere.getStdout().contains("\"query_type\": \"NAMED\""), "No entry point classes found"); - Assertions.assertTrue(runCodeAnalyzerOnPlantsByWebsphere.getStdout().contains("\"operation_type\": \"READ\""), "No entry point methods found"); - Assertions.assertTrue(runCodeAnalyzerOnPlantsByWebsphere.getStdout().contains("\"operation_type\": \"UPDATE\""), "No entry point methods found"); - Assertions.assertTrue(runCodeAnalyzerOnPlantsByWebsphere.getStdout().contains("\"operation_type\": \"CREATE\""), "No entry point methods found"); + + String output = runCodeAnalyzerOnPlantsByWebsphere.getStdout(); + + Assertions.assertTrue(output.contains("\"query_type\": \"NAMED\""), "No entry point classes found"); + Assertions.assertTrue(output.contains("\"operation_type\": \"READ\""), "No entry point methods found"); + Assertions.assertTrue(output.contains("\"operation_type\": \"UPDATE\""), "No entry point methods found"); + Assertions.assertTrue(output.contains("\"operation_type\": \"CREATE\""), "No entry point methods found"); + + // Convert the expected JSON structure into a string + String expectedCrudOperation = + "\"crud_operations\": [" + + "{" + + "\"line_number\": 115," + + "\"operation_type\": \"READ\"," + + "\"target_table\": null," + + "\"involved_fields\": null," + + "\"condition\": null," + + "\"joined_tables\": null," + + "\"technology\": null," + + "\"is_batch_operation\": false" + + "}]"; + + // Remove whitespace and newlines for a more robust comparison + String normalizedOutput = output.replaceAll("\\s+", ""); + String normalizedExpectedCrudOperation = expectedCrudOperation.replaceAll("\\s+", ""); + + Assertions.assertTrue(normalizedOutput.contains(normalizedExpectedCrudOperation), "Expected CRUD operation JSON structure not found"); } } \ No newline at end of file From 2615d7d75d5259c157526e1d14878876d81ab445 Mon Sep 17 00:00:00 2001 From: Rahul Krishna Date: Sat, 8 Feb 2025 12:22:14 -0500 Subject: [PATCH 07/12] Issue #109. Added a new field to the Callable object to now track all the crud operations and queries that occur in it as an array list. Also updated the test case to capture this. Signed-off-by: Rahul Krishna --- .../ibm/cldk/CodeAnalyzerIntegrationTest.java | 27 ++++++++++++------- 1 file changed, 18 insertions(+), 9 deletions(-) diff --git a/src/test/java/com/ibm/cldk/CodeAnalyzerIntegrationTest.java b/src/test/java/com/ibm/cldk/CodeAnalyzerIntegrationTest.java index 0abe51af..63aea19b 100644 --- a/src/test/java/com/ibm/cldk/CodeAnalyzerIntegrationTest.java +++ b/src/test/java/com/ibm/cldk/CodeAnalyzerIntegrationTest.java @@ -178,20 +178,29 @@ void shouldBeAbleToDetectCRUDOperationsAndQueriesForPlantByWebsphere() throws Ex String expectedCrudOperation = "\"crud_operations\": [" + "{" + - "\"line_number\": 115," + - "\"operation_type\": \"READ\"," + - "\"target_table\": null," + - "\"involved_fields\": null," + - "\"condition\": null," + - "\"joined_tables\": null," + - "\"technology\": null," + - "\"is_batch_operation\": false" + + "\"line_number\": 115," + + "\"operation_type\": \"READ\"," + + "\"target_table\": null," + + "\"involved_fields\": null," + + "\"condition\": null," + + "\"joined_tables\": null," + + "\"technology\": null," + + "\"is_batch_operation\": false" + "}]"; - // Remove whitespace and newlines for a more robust comparison + // Expected JSON for CRUD Queries + String expectedCrudQuery = + "\"crud_queries\": [" + + "{" + + "\"line_number\": 141,"; + + // Normalize the output and expected strings to ignore formatting differences String normalizedOutput = output.replaceAll("\\s+", ""); String normalizedExpectedCrudOperation = expectedCrudOperation.replaceAll("\\s+", ""); + String normalizedExpectedCrudQuery = expectedCrudQuery.replaceAll("\\s+", ""); + // Assertions for both CRUD operations and queries Assertions.assertTrue(normalizedOutput.contains(normalizedExpectedCrudOperation), "Expected CRUD operation JSON structure not found"); + Assertions.assertTrue(normalizedOutput.contains(normalizedExpectedCrudQuery), "Expected CRUD query JSON structure not found"); } } \ No newline at end of file From 917a533910c1b28cbb3ac0874e77674c2cf74301 Mon Sep 17 00:00:00 2001 From: Rahul Krishna Date: Sat, 8 Feb 2025 16:04:23 -0500 Subject: [PATCH 08/12] Issue #109. Removed redundant fields in CRUDOperation entity. Signed-off-by: Rahul Krishna --- .../java/com/ibm/cldk/entities/CRUDOperation.java | 11 +---------- .../com/ibm/cldk/CodeAnalyzerIntegrationTest.java | 6 ++---- 2 files changed, 3 insertions(+), 14 deletions(-) diff --git a/src/main/java/com/ibm/cldk/entities/CRUDOperation.java b/src/main/java/com/ibm/cldk/entities/CRUDOperation.java index ed5b5564..96d5bb7f 100644 --- a/src/main/java/com/ibm/cldk/entities/CRUDOperation.java +++ b/src/main/java/com/ibm/cldk/entities/CRUDOperation.java @@ -17,18 +17,9 @@ public class CRUDOperation { @NotImplemented private String targetTable = null; @NotImplemented - private List involvedFields; + private List involvedColumns; @NotImplemented private String condition; @NotImplemented private List joinedTables; - @NotImplemented - private String technology; - @NotImplemented - private boolean isBatchOperation = false; - - public CRUDOperation(int lineNumber, CRUDOperationType crudOperationType) { - this.lineNumber = lineNumber; - this.operationType = crudOperationType; - } } \ No newline at end of file diff --git a/src/test/java/com/ibm/cldk/CodeAnalyzerIntegrationTest.java b/src/test/java/com/ibm/cldk/CodeAnalyzerIntegrationTest.java index 63aea19b..ca8824f6 100644 --- a/src/test/java/com/ibm/cldk/CodeAnalyzerIntegrationTest.java +++ b/src/test/java/com/ibm/cldk/CodeAnalyzerIntegrationTest.java @@ -181,11 +181,9 @@ void shouldBeAbleToDetectCRUDOperationsAndQueriesForPlantByWebsphere() throws Ex "\"line_number\": 115," + "\"operation_type\": \"READ\"," + "\"target_table\": null," + - "\"involved_fields\": null," + + "\"involved_columns\": null," + "\"condition\": null," + - "\"joined_tables\": null," + - "\"technology\": null," + - "\"is_batch_operation\": false" + + "\"joined_tables\": null" + "}]"; // Expected JSON for CRUD Queries From f1982da54d8517a7c65ace9fc8828372c3ef1bb2 Mon Sep 17 00:00:00 2001 From: Rahul Krishna Date: Sat, 8 Feb 2025 16:39:05 -0500 Subject: [PATCH 09/12] Issue #109. The gradlew/mvnw path must be made absolute Signed-off-by: Rahul Krishna --- src/main/java/com/ibm/cldk/utils/BuildProject.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/ibm/cldk/utils/BuildProject.java b/src/main/java/com/ibm/cldk/utils/BuildProject.java index 8d961dbf..f088e469 100644 --- a/src/main/java/com/ibm/cldk/utils/BuildProject.java +++ b/src/main/java/com/ibm/cldk/utils/BuildProject.java @@ -34,7 +34,7 @@ public class BuildProject { public static String getMavenCommand() { String mvnSystemCommand = Arrays.stream(System.getenv("PATH").split(System.getProperty("path.separator"))).map(path -> new File(path, System.getProperty("os.name").toLowerCase().contains("windows") ? "mvn.cmd" : "mvn")).filter(File::exists).findFirst().map(File::getAbsolutePath).orElse(null); File mvnWrapper = System.getProperty("os.name").toLowerCase().contains("windows") ? new File(projectRootPom, "mvnw.cmd") : new File(projectRootPom, "mvnw"); - return commandExists(mvnWrapper).getKey() ? mvnWrapper.toString() : mvnSystemCommand; + return commandExists(mvnWrapper.getAbsoluteFile()).getKey() ? mvnWrapper.getAbsoluteFile().toString() : mvnSystemCommand; } /** @@ -46,7 +46,7 @@ public static String getGradleCommand() { String gradleSystemCommand = Arrays.stream(System.getenv("PATH").split(System.getProperty("path.separator"))).map(path -> new File(path, System.getProperty("os.name").toLowerCase().contains("windows") ? "gradle.bat" : "gradle")).filter(File::exists).findFirst().map(File::getAbsolutePath).orElse(null); File gradleWrapper = System.getProperty("os.name").toLowerCase().contains("windows") ? new File(projectRootPom, "gradlew.bat") : new File(projectRootPom, "gradlew"); - return commandExists(gradleWrapper).getKey() ? gradleWrapper.toString() : gradleSystemCommand; + return commandExists(gradleWrapper.getAbsoluteFile()).getKey() ? gradleWrapper.getAbsoluteFile().toString() : gradleSystemCommand; } public static Path tempInitScript; From 3d48f1dfc83f5d0ec8ef720273d71ce835fc6562 Mon Sep 17 00:00:00 2001 From: Rahul Krishna Date: Sat, 8 Feb 2025 17:55:03 -0500 Subject: [PATCH 10/12] The gradlew/mvnw path must be made absolute Signed-off-by: Rahul Krishna --- src/main/java/com/ibm/cldk/utils/BuildProject.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/com/ibm/cldk/utils/BuildProject.java b/src/main/java/com/ibm/cldk/utils/BuildProject.java index f088e469..910194d4 100644 --- a/src/main/java/com/ibm/cldk/utils/BuildProject.java +++ b/src/main/java/com/ibm/cldk/utils/BuildProject.java @@ -46,7 +46,7 @@ public static String getGradleCommand() { String gradleSystemCommand = Arrays.stream(System.getenv("PATH").split(System.getProperty("path.separator"))).map(path -> new File(path, System.getProperty("os.name").toLowerCase().contains("windows") ? "gradle.bat" : "gradle")).filter(File::exists).findFirst().map(File::getAbsolutePath).orElse(null); File gradleWrapper = System.getProperty("os.name").toLowerCase().contains("windows") ? new File(projectRootPom, "gradlew.bat") : new File(projectRootPom, "gradlew"); - return commandExists(gradleWrapper.getAbsoluteFile()).getKey() ? gradleWrapper.getAbsoluteFile().toString() : gradleSystemCommand; + return commandExists(gradleWrapper.getAbsoluteFile()).getKey() ? gradleWrapper.getAbsoluteFile() .toString() : gradleSystemCommand; } public static Path tempInitScript; From ed010fc3804e8c70b34e9fb5a40c081c2c94b914 Mon Sep 17 00:00:00 2001 From: Rahul Krishna Date: Sun, 9 Feb 2025 13:04:07 -0500 Subject: [PATCH 11/12] Update Type entity to store empty lists instead of null. Signed-off-by: Rahul Krishna --- src/main/java/com/ibm/cldk/entities/Type.java | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/src/main/java/com/ibm/cldk/entities/Type.java b/src/main/java/com/ibm/cldk/entities/Type.java index 33c18688..c42d655f 100644 --- a/src/main/java/com/ibm/cldk/entities/Type.java +++ b/src/main/java/com/ibm/cldk/entities/Type.java @@ -2,6 +2,8 @@ import lombok.Data; +import java.util.ArrayList; +import java.util.HashMap; import java.util.List; import java.util.Map; @@ -15,15 +17,15 @@ public class Type { private boolean isInterface; private boolean isInnerClass; private boolean isLocalClass; - private List extendsList; + private List extendsList = new ArrayList<>(); private String comment; - private List implementsList; - private List modifiers; - private List annotations; + private List implementsList = new ArrayList<>(); + private List modifiers = new ArrayList<>(); + private List annotations = new ArrayList<>(); private String parentType; - private List nestedTypeDeclarations; - private Map callableDeclarations; - private List fieldDeclarations; - private List enumConstants; + private List nestedTypeDeclarations = new ArrayList<>(); + private Map callableDeclarations = new HashMap<>(); + private List fieldDeclarations = new ArrayList<>(); + private List enumConstants = new ArrayList<>(); private boolean isEntrypointClass = false; } \ No newline at end of file From 18ab5f41baadaee518f3363826f8d8a8fcb7d40d Mon Sep 17 00:00:00 2001 From: Rahul Krishna Date: Tue, 11 Feb 2025 14:14:35 -0500 Subject: [PATCH 12/12] Update gradle.properties --- gradle.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gradle.properties b/gradle.properties index 76acd457..13794c20 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1 +1 @@ -version=2.2.0-dev \ No newline at end of file +version=2.2.0
    + + +
    +
    + + + + + + + + + +
    + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +

    The current DayTrader runtime configuration is detailed below. View and optionally update run-time parameters.  

    +
    +
    + NOTE: + Parameters settings will return to default on server restart. To + make configuration settings persistent across + application server stop/starts, edit the daytrader.props + file inside daytrader-ee7-web.war (which is inside the + daytrader ear file). +
    +
    + Run-Time Mode +

    + + + +

    +
    +
    + Run Time Mode determines server implementation of the TradeServices to use in the DayTrader application Enterprise Java Beans including + Session, Entity and Message beans or Direct mode which uses direct database and JMS access. See + DayTrader FAQ + for details. +
    +
    + Order-Processing Mode +

    + + + +

    +
    +
    + Order Processing Mode determines the mode for completing stock purchase and sell operations. Synchronous mode completes the order + immediately. Asychronous_2-Phase performs a 2-phase commit over the EJB Entity/DB and MDB/JMS transactions. See + DayTrader FAQ + for details. + +
    +
    + WebInterface +

    + + + +

    +
    This setting determines the Web interface technology used, JSPs or JSPs with static images and GIFs.
    + Miscellaneous Settings +
    + DayTrader Max Users +
    + +
    + Trade Max Quotes +
    + +
    + By default the DayTrader database is populated with 15000 users (uid:0 - uid:14999) and 10000 quotes (s:0 - s:9999). +
    +
    + Market Summary Interval +
    + +
    + < 0 Do not perform Market Summary Operations. +
    + = 0 Perform market Summary on every request. +
    + > 0 number of seconds between Market Summary Operations +
    +
    + Primitive Iteration +
    + +
    By default the DayTrader primitives are execute one operation per web request. Change this value to repeat + operations multiple times per web request.
    + + Publish Quote Updates +
    +
    + Publish quote price changes to a JMS topic. +
    +
    + Percent of Quote Price Changes to List +
    + +
    The percent of recent trades to display on the Market Summary websocket.
    + + Display Order Alerts +
    +
    + Display completed order alerts +
    +
    + + Enable long run support +
    +
    + Enable long run support by disabling the show all orders query performed on the Account page. +
    +
    + +
    +
    +
    +
    +

    c=52d}w9qk!-@R7k14zG0 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

    V~I5Eg)39GLXRo+X0LUO3j+A(zSY~6pw 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%0A}mpuf>i6wVstxdNy){{_fLKPZTo%gDw>6Xi$qS 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 VUIe@dcoFa-;6>n{Ap*+(|2JR=st5o8 literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c731.dat b/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c731.dat new file mode 100644 index 0000000000000000000000000000000000000000..756b908f0f8e9c971dd6613d7e3bdaa4e23d3d24 GIT binary patch literal 69632 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 BxUv8M literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c740.dat b/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c740.dat new file mode 100644 index 0000000000000000000000000000000000000000..3f2ad6e69d9e6ca07f052b1df9230f638cf7e20b GIT binary patch literal 69632 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 O5g-CYU`-J~{{IgtP|kb+ literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c771.dat b/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c771.dat new file mode 100644 index 0000000000000000000000000000000000000000..789d9ae440f8bf2e46dd599ff76e3a1b86fa07f1 GIT binary patch literal 69632 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 F`wKdIAmso6 literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c791.dat b/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c791.dat new file mode 100644 index 0000000000000000000000000000000000000000..ff867857c0d5fcb3dd38675f98b1ca0cb5c80c3b GIT binary patch literal 8192 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 literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c7b1.dat b/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c7b1.dat new file mode 100644 index 0000000000000000000000000000000000000000..7354db2e9fe60da3d88adb985eb28fe205aba942 GIT binary patch literal 20480 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 literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c7e1.dat b/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c7e1.dat new file mode 100644 index 0000000000000000000000000000000000000000..85a139e43c9a7f54f97289f298fca39c2c1aedee GIT binary patch literal 28672 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 literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c7f1.dat b/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c7f1.dat new file mode 100644 index 0000000000000000000000000000000000000000..2e558d6e712abcb3c4f7d57956d160a20edc3b11 GIT binary patch literal 69632 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 literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c801.dat b/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c801.dat new file mode 100644 index 0000000000000000000000000000000000000000..eb06862f2e061f535c9cbdf3ffb38d6168030f62 GIT binary patch literal 69632 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 g6UaP)%oE5wfy@)gJb}y;$UK3}6L<@sKVE_OC literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c81.dat b/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c81.dat new file mode 100644 index 0000000000000000000000000000000000000000..ab21c74c206eb0be354d9021ecfafcf088507e66 GIT binary patch literal 8192 zcmeI1J9Fej5XXDg_U`&^-^2HQ_|CTn9K+2^(ug7;BBU;IK!hGM0Wn+^8B~EYLP*H( zBM=i^6<@#stVx98t2)vgRL0YKo3#)R#ZZP%QxcYQej zryXb9mma>rm9OzN2iQ4<1b#Rk_m2IGR)6^UuRj}qCl))N{*7-!bw1>R^Z7I9-(9dW zx<&;?1x5u%1x5u%1x5u%1x5u%1x5u%1x5w_TMGR2>$d{F!9AV+zW*2`9@%rd+&t%L z9Mc&-GWZeZZyy9)ID32Y>F<02&&6@;{l0ytM-TKY;B)w*^?b=5d?@idPG%EWz=2mZ zw315IO2#_Nqz$#lLsj5ksdJ@Z3B(NMU7mnmeh#Z$J`C}zu-4&?8RFMqz01cTejPSC zyv>LB4cP4RgZXd57W0+T7B#IYekSX>#F?+?bkfsl?HWC|V7n9FG2f^EHtclxBpu3s z2X?!BImGY6l@71CAGFj-%w$n!blCPo(&T>yuAbwq3oPTS9eEo_l zHuFK*=#<6;v`(b;ro#TIql`F$$&%7!oX>5z!+h?w!hSmZpAIBj!^bJo0!0?B_S(c@y8H*#B-Y{uZbvzEuYK!T8&tnXjCwy-Hd=FVBAm z4D-%~;8ohz>vDb3$j%SR&Q5sFo*DB~CRdKgzjVw@B)iP3D@?*C@Kw_S&;Ho|^j~fj B-P!;E literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c811.dat b/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c811.dat new file mode 100644 index 0000000000000000000000000000000000000000..e502c06431364632082001aaf820557ecddf66fa GIT binary patch literal 69632 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 literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c821.dat b/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c821.dat new file mode 100644 index 0000000000000000000000000000000000000000..f426d4f7db6882cef9ec05b5c2dc13ffc7ddddc9 GIT binary patch literal 135168 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 literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c90.dat b/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/c90.dat new file mode 100644 index 0000000000000000000000000000000000000000..72619ed7aef9f0062ad50eb7fbc233469bdf3cee GIT binary patch literal 36864 zcmeHPdyJgdRlncty!YW(+PoYZ5<7Mik2|m3orMH;cJ|xdFP@zl&tq*T4Q3wSI-5GS zWxG)l3WXo9JNJ%wNC;uTKYUEfHY!`a>A$XDgXeFm$BxUc zf7alY%k=8*{+p)2c)b6I%m2UWbp46nh`xue53p1>5B&>VkEewQ!T)1UpT*blx}RZ} z&yFvTM_@bx;}IB-z<314BQPF;@d%7ZU_1ij5g3oacm)1Gjljy^{nvtcFZ8(2?{5bhAkHqA3XSvF5f@Q4K8En-X6 zYS}DS0CO-SB(@=@_~26_xokE{b*t8_(g;PxqAg~OxHx?N;+doE3+?Xx_R*ewvGd5$ zZu@fk?D;cCt#dv5;br?$_u|%t%jYi!c&8d`1GOp|h-rRbXT+4%fB|nb>qWeGI2~gy zqk%)BMq`F=VYiskZ>XA>ai58~OE-Ya$9*;JnDTy$X*VBvQY7SJs`Mve$Ym1ZEl`ti zPjL9=sT$4k3AaH}qrR7qz0<{n-Jq3=*~f?8BX*UmrDLo0Vx?6s)~)6#wT4`rnCkpB zx&_n;+#*FNw%m8Q80 zep5gYP>(Pz+H3h1vES8g7jqrIx4XnN zjmNUNQf!sU$3(gKvxX>JtDEn3$x=KzUjRDis3bTf@+u})(e_cgPh zZwBJ<(6@oFC6{@^*T_wpk!;p;q3`rkeyjW^_|UM*DaQ)3%HP4qhxr8KvsSHJ_Y|8} zwW8+Jgnxv%SvRujIX=>r^kcKK;5SA;$%o$&IsKBwTlmNn^i@(ZxC4yAxs`7tD#DuY z^A0`-_^>ospes@y;vgS7CL*v}o8%N6JrCllczGKi7e;#!FH6iP7m2^8F9lXH+eFb?1<^3VCct(b~ce;k; zW&47Cu7^=?WeX_4MG@ewI9u?s9hT{DW;?SWo`aJ3%i`yteN?oey-}PNV(NL(gZ8vI z32j*1E5zh8;smr7UQfO*?t%76d}s0wVFMlhn)rEWFW@^9lXxZm8F2>MyRePDEIQD( z#0P|keqMYLS`)8CUcpaAehsZh4&s&YR}mq6PP`l1U5G#NCA2ls#J+{Thwllkh^JwR zd{^8D?XQSUX!oNP@fCb0JOc!Ar?>-Jc)a=xbDw{U{GUGuAmY^O)eQ@7{va5*cqQdJ zbjcv+J$+$)^ue|H1u5T;c7Bl((M@M^AawN5Va%s`y$(Dpbny$I$dS)v@*r|Ra4D9p zVuQKZNQqz}gBz8|G9O`3GEyH{&^w*KBO}w&Ly{a=(2xe-UEC;^%Ed-w5D~-T9l#5| zBc{qAt=zmr+7OQo7(J;EEIUA2<>(AzqiX*> zNNiwr4|2Um%`90fR%tLj68_nwt~cc6igcA7ccgoMiKMPJ_#lIK+OW(MK=7=Jh1sxL znqHGzh{yhvn6Iuq_!xpo0>WwOShY5=;k| zxvt$Soj?2D2hUv+LEbBu88q98kFH0|cCPyP>q3JM{Aii1t~2-;fE#?wJhiRaGLsEm zV(_sb1?;lfH0!N0`FY3buPriNSnvmL)j+t~2KNh4x}cDjm6c2?GrKvTYIo-GPgPl& zg`^`cqK)P{H^JBC1Rr2b3;=lGnHgz^E+#P0^@5PAPg9AbE+P0p2Vu#&bl?LEIT+|$ zYU(k{C%Sgv1C2d4Pm-h+^~{g9Lx?UL_`pM)g%qqwj^3mKTukhTH0&0T`z^?Bn#J`R z%nlgEld9Yaq)*R5_cjRKAybpjVFfq{~@T+3z3p9 z>J2VHhX>UECI4sLH^@!ZeH+X?MwB28fMsCklJScYPGsF>&Os^%RSP+#w_PCCg2S$! z5r<28Mkns>VhG}fxd9TKBnWV%5RV`$7x4pxNJ ziK)B54#~leaRJ9z;X1K&7u+2@FX7f>l}tEsbQfe8IR?-O^SCayF;^!{l z;8=?#bgCNsqz}9kzjlFlWh+xZBDSK*0z}$biypeIyvhzjH|-hhx1}SZ@hn?FUHXI$ zR#LT0$E)<6~P!BF?TY%FRM*7FC9h-Ogc}4v)+NZ0IateZyK>ubam`77Mx+6~BqHcM5rs zDKfC3Et3X38;Y)-f<50yPH)0>V4_oU+gZ)5uXD>MMBQ2N&~e{797u>2e z%=&iE{W4S{>0EHq>IOacOH+xav%s}%11d`Wad*vD)jA@k&N8q~$Oh<+=_1O6|_8ofhuNfvnUHHu$?{h0Z6wjU8^f$e`2m4b<1L@U7j!EWd!#0j0lT?wIU z5#RVSUN<^;Mf?CU#V64^@PE(_@bT=2zJ9|H{|~YIZE28&S`@+`IOZLTwwz~Eu+zPsK{^EnMD;~DQENxwG*q6m9 zpP>n$$97T^vgz4*Sldt{@>tvGnyRg)Re>Et{1{A%0?R<~^-a1$AaMRfByoWYE(`RE zBlyK&5*Jv=;I3s}qSbc&GGS5|>~wB3pUyxQmC4Mea)oRcwxjemQ=9Oxv-7i^?0j0l zG;g(-#D-J_7A)xFbvQDjfEl?IQGXWpj!DAErHJbX0#}p7?RX6?BSnmft`M0vt$ zt`(QptxAB~Nfe)D0f>#&07XRRYJTYyQTl~KCJnomU~*)#nN)Yy&Zg}7g}lnW^ErDy zQxGx{Jl+a$@_=|e3mg*rhDqQ9MS?M9h`_Tf1eJ)1!n2@ZLwLXQKfYrJBnq(l3xi#1 z)!__@wh=$#T&F>rrs_1L4X_LlMXhV_QD=BuLqq%gS@6(*SUuKyYu)!Cfo6cT0k(nS z$zcO7M+h_nq!6$SKp|^z7(%X7m$L&JIw=G!bO;xvQ>C)0`4_+Jp4j~r=$TYIyE!}T z2ZDqPqV_CUm^0O-yMbp8cISDmf5l^o+q3Xt{S&?lNPbcnF?$v?bRCl+tI_E1@A8ZN z#Ozt%{ZOZ(5p5{A@~|h)6cvq#+y??zf(OZ9p5R38S>P}Yt%l57@Yt=K=6(d6*u93H z%cnB=Hq?UC-3(2`{N`L{b3vXI2FbTRh!%#6uB;6V(R&s;Y)M@!Hr7DvmwVlO^`OUo zPts&TB%fshCS(mZyq>7mNhb41V*2RB@LA~KBXKXsdUYALO{%>dtcoS^{K95#E)8e0 zAtRV8q;kCl*v!1yri>u7khAAHpvHwoXplC#pK}&TV+C&lJPbSso|&J^=F=TG{^SAO z|8=(QABfYR5!(M@J9CZr3^4y^k#$ekk)Kb!F1pbEwtSw$cJl9$V^2OJ+x^%kUqFtX zY~$|zWD^-uE zSHk~_SHiz3+bq`kCtgN;PyqmW;#SH3U&2>ITe6KKvT;oO84S`J_)hV0e9w0M|6^bH z_Ps;=e@+~R*N?)#;m6GIpZ&l3^?%kxfvIkuG)r&&W>wn~)6aW@9bbPJa*xuXb#RXKyNeEz}gKIB?3)@gfV!T|t0wkOeqUbDW=r_9FWsB}6?L~Kv8vjFglPG$x(Cxv>Z+ou%(VR*yz1iueJE&c_`zvp! zLQJ34N2FMTz~hyssIN~{p9KxKtz0ekPf2;i1fj5r=(Dh)+v`hKlV(I%+z92Ax5MU5 zI95=mAE$`)S9geR8?k*BHmsBilwWa~%Si9SC(wXO_=)bbz#(0R)1<47*3x=^^P_vb zp{^6(XQ4wvTRl_TWMwH2y|Z zKM?xh{B+WpzG>*h^;zhc_+a0g)ta0tlfK|Y^I7093mitIS!^6zl4HHgXGEwj&%%Y< zh`56@L%W@zwS!v3zgf_*B5`Mr?C~BaSnVDX>t?~?_R*8L3l0QqiM>~H2G4WAM7vq= z5Edbn4>;gHe{f>mAi@^9=`Iw#Jz|$07TuF46%$lNor4<@6Ck3<(eMvs2J!9O=4QT| z?qLzoJ=g++s{k_HxAd5pgFlOT{S2~zggJe*zt$bXuRE+iPmi@va_H;(Sl9S%T}{gRO*BqInnTs z$bv8nA6C{%t6U!B(2UuVqV49nLK|j_x9b6)R<6?SNruA#5A-y0;~B})r~eJv`}9YU z$xqKC)1G=+w!ehDdTKwi@yRdYx%$cDs179G!0XA6%9?)$uO$9K?)HBi*?Zzvd^P?e zz8ZfJd3by;BFDarug31fSE2F`ZS)IxC3*~>M_xl#ANeiW&SKxfFUwZ4{jjY0PsrW= z6ZcCkU>Y%j`GaN=nnDEQ5Acf7#OLBa5J!9huK@ptp5UYY$v^tlA^!hiaR@Hs>7L;S z-e8AE_%Lkq0yW3Z%;)my999@17PQkjP>VWUl8mzp?e0QhHZ4Yt1%g%@%f<+?K+s}i z!3T~7f|eT#eAHMVXvwi`yoFdGXzj7gj1~*TQ8}6BGIjwb6CAYim`s6Vfp`}mJZLNs z=|I?lVu8r;u>-~ek>x{=5(`9*j~_f1h`dC%vvVLP<-J``z*sQLM}{GWc+FG}biX z2MCIlQvs3&@l$*QFyvbL>ZNH?rY3%xj}0yhh)`wKq{%``kOz+tcS`KJTpB7Rd2e?J z{f0B|eGW&N@s)`^MsP~(#a(=C=r>>w2HY(*MsPJKKO@1r`E0L{o`v7s@bKdhDf$QN z1_a1(JyVBih&ogEvwRycYjBM&70X5V!A$l_U0e)gqFh}CMPYltKdH8!H({~Jw*YrR z{{oyfyST)Mhs23T4)HdtIkZ>`gpZX-7$l2?&?x67FD~;fK!lR$+joGLulF4=`37Lq zBmBe^o}50dMew*w#d(_&iNzIZB%inKLV6CeVvqFzaS%$uW_?8!<2lr2ag~n`UjjWS z?6!wp3WF6FV%>~2z8RQK@@ovXak$km^kK62__(BTm{2fn^-CGfv|6`tH{Zfggye*= z#bbQ%ojigHb6&Avu^b2;{oUa1vVOf`ah-1fe32Y|C1}tR@Lp#XKDsMMpQ!XXQy)a;KXn+@fyoyn|ED_tf8($EB|m}h zPcGnl690(rNj!>7J8>OeiT|-|>!=RIzK>|Jk0Ec5-Gy!RpJn?vB18`&OON~|UWuHO z&-dc<@SjNje-HL&;)jSo@f5x~QNmY4-;wPTh#WeMwhY-r<36+qV}vTerzG>g6MKt~ zS6}^$PY?0`W0L=0S^qyk@88+>>;J=)&1IvAWL5RzI;B4z>Ro@M3swIEVP{ozcXtJ9 zdlZ%b17YVRwwEJQ*i`%vgq@ezUh*Ab8&vzxXJ!k9bWVkm*={GFn(Gwsw}kQVTyL&m z_eR%S4B7<1vN3|*V$e1K7W_^>>C1r(s^7D~N7Y*lD&(_lxcV}N_D(f@mYLD?7DN3y zKnC==bWY{zE|Upden9PAo#E$zOV0qC;Mm%`Ia9M%$7K5t%-E6M|6WrS! zLcas)ErvQc&%uU%2h&>&s`O`}OxsQ4uL~l-bn)Y(>Mg41&$2O^-l9tWTnoYF7FG0T z8Gw5bP;F6Fe-`=(Vv8#HbK!$)Ee4hPSq4UtS_~@mv+ze%S`4c9xAPr1o<66x(zq;y z5rh_l3Xv@M(RCJs>X9rfBgiZURU}#PBdII~l_OaOhQcC8WZ6kTulnCJHDuA#uS@1H zf5U(JcKijtsjne(o;rhEdMYOQ|L5>MldE_=`Ca7X$q!2Yf1Bk0Uy-{2Y-HWQ2LUtw zjBJl%8~b;BXY8ZM-eU`RCHgIV9{pwc{4nzT$X5|F@&MY3?7~;W&*7`#6W9X(2jq$0 zMOzaYR3buOM~k5glK=0)UK!6w<}WRZ@8hS0R2-oGk6HjcK0Nc{-wyHr2@!(J{Vme+ zJ+cA$!0FNF|14?KiKHa`)l*UdSQdb7shwb_hj)Zcy6nQkuXVMQBd75hUmK6Wcm&2H uFdl*N2#iNyJObkp7>~es1jZvU9)a-){8&cdDO3u8|98py_g?$Y6aNeDO{}i~ literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/ca1.dat b/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/ca1.dat new file mode 100644 index 0000000000000000000000000000000000000000..981a2c58125bb9dd93e6add705c8974448a5eb71 GIT binary patch literal 32768 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 literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/cb1.dat b/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/cb1.dat new file mode 100644 index 0000000000000000000000000000000000000000..a4fb8f44d2e00050170efcb2845b1cdbc3e28f5c GIT binary patch literal 8192 zcmeI$d5qNc9merzc7DIvnZ56WW!aNG8JO8!c0oYCUv5P}+Ipdtx*XoOc+h$xrQV?8 zMXSXYEk#8XnrdUzG;LE8LyTH$)F>LF(X_^x))-CnGtcwGkQVhn6O-A5_r92Acb4aq zEbQW905SWOdnsTO?7=zk_JbcYe-XX>&%|5>F zp#-HuDawR0lndpk5Gqh9RH90#LbXth8leWYLM`fqI@AmGXb>9EC^TY>Fa}LR6UGW- z(JVA$oG=b8LJL}jR#m|&%@v|gb{A|efBwKuq)DL$t71;KdNVff@l5KyPWZSQmZ2O-|w*Ai}+x~LNw!cEM?XQ$<`>Q0| z{%Xm#zecj{*GabhwUTYWUb5|fF4^`QB-{QMl5KyTWZPda+4eU`w*8HgZGV$w+utnN z_P0p3{YJ^Q-z3@gw@SACZIW$&yJXvMmTdbwB-{Q@$+o{svhDAdZ2Nl((1p(I$nd~W zW^^E($qr9R53Za#l3uy`l%aISUb0gMR}GJ5Gxo(guoG?JyM}g{UrKhEUrBbDdnG%} zeUcsK*ODD(E1zsIvwCzzW_0vho-DNc-LH4G`~60;`~6n3`)!l#eh)}?zXv6|-|r;5 z-*(CF_j}3iw?ne~JtW!v9+vEWk4SdEos!+}QOWMNOS1btCfWTSm+XGKCA;4q$?o?i zRcNEVCD~~EBpdB*DFt6bC3@gXrC#_lsSmzf>W8n8CcsxpY4|E>B7C(p3BE?kz}HGy z_&R9-zFr!HZ;*!I8>Pwc`bRG@4Bw>3M&QRvQ{bDWsqo{Z!{A$_Y4EMmboe%D27J48 zIDCgR6TZ_FAmJSR_=q09E8;Bp?ufJDdm_$(?~OPYzAxfD`2L9V;U`2~0H2O{1pLH^ zN5W5vxDY-Q@hJFg#6|D}5f{S`8skVN;D@9_``=6cBzQw-GKF2=I?q;{M_vJo*ax;4ado_Crdp5g*J%L@q z&Sj^uS+<*PW~*8IFRuNKzF_~ue!%WyUtynT|I9wYZeTBGFJw<=m$S#P3t7*OuxYk~ zZDh;YFxSLq>__ao>>KQh?BCg&*=yOg?0M{J_9V8At!GQwc&_26?1$`r_BHke_HXP{ z?Bncqmdl4+KIHNtmk+so$mK&WA9DGS%ZFS((67V7cFB0$~0WT8pA^|TF z@FH^k-`_FQ%qdm_7(ozKo-2iab> zg{@_a*;uXxpRoU8-(g>6_p*Os|HSTMA7t-E%HDS~dn3D!UCW-&p2jX`k7XCJbJ%I@ z0Ncy9vh{2k8|E7Ooc)-6pWVm)likbym3@lc&F*0DXYXb=vK!bd*fs1~>TpO%>ntVgFCr z4ENUI6eI6f(O&hXEco8qQXYr|HDh*tcs)i^d-8;zFk9F9)Vb*Dm626-j3G)g0JGe2WNf%Oo9-d|nosE1bou(4y&7)tkEA*Auyqb;vWED7=8lJoH&!%yDC|iBK-ROmOp& zMyYSSM${z&M1Tko0U|&IhyW2F0z}~dCeVx^#=~_RLj0rt7M`R1psfdeJi`BiA=(=l dp?$0EvGTwVZLcB1{u|vtg-0ur{dd2={RO^D#LoZ# literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/cd1.dat b/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/cd1.dat new file mode 100644 index 0000000000000000000000000000000000000000..3002ab5d87be2d8c43ca42c4234765d9a35674c2 GIT binary patch literal 8192 zcmeI1y-LJD5Xb+U(=DlB1IR37vh$yv-R!TM2`&IAdU#mc+S+D~iDxyMf2Cta{?&~raz>8} z)XgGAhm-&3sOCkt*KSTHdS)*ztiIDrZDbC~$=7GP*Etc9gn$qb0zyCt2mv7=1cZPP z5CTF#2>dSsclVbH=X57i-`BvU_QH=_n)qzMcBo}=3wPQG$em5IOr5W=u3l61C4F=2 zfqMZ7Myc|o6>3WG#IdMLV8=&s(CVQ8<-oNtj{+&|x+t0jZGXs05hbJSBz;y&C|fAP zp_FK_-)5dSsH+N?a9OIhm{e2JYR(oY;m39C3j#e9w46eZYItXA}UvJg>df)#ID6G~}O$4(|_me+L$Lzv2B0 zu*myE-oFT4-XHV+F7$XmqT$xtgC*V{@%|;~^L{K9H+~k z3jJU-t=BRP$gg9pqR!FpM~N~;8mpqr5E6!;nsJo-RIdSkK@vhh2nYcoAOwVf5D)@F yKnMtdKSRLX1N=|hc_)3g>JF)WOIngfq%EuPKsvGNUXwmjW(y9ci+(x1y#E9P%b@xI literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/cf0.dat b/src/test/resources/test-applications/daytrader8/resources/data/tradedb/seg0/cf0.dat new file mode 100644 index 0000000000000000000000000000000000000000..b943f01db79c64b30febf5dbf990a9a2c3fd3ed3 GIT binary patch literal 12288 zcmeI1OK%-D6vsU`w@I2NeGwij5K`4H(3OtI9*;+2L1}MGNp$Z`$Q5FNB0pw60d!F$ zmMr)L6^{iA)~xvid;nHmuwlirAD{@1Jq`*aFMMo|FjM7{|MJV%$<)5%=x6vy?)}fjg@bnJaqisI?w*gtuIEc{jaiu%saoK zeFTKKj1K8-oty8pC8RVFNCXmrL?97J1QLNnAQ4Ce5`jb@5%?byc(FyFkx%ghPd3S~ zlNX}d8Ib-pL@jAZwX7=-`+~;_|L1y@~^y!Q&(6B*nlUuy0r376}fC@QbwkjvK zQG5b;(TdeVQ*eH=VFEzYsNXKR`N6?Ht$>@ca?0Tvc2g?52v$>NW12x z<#~?t6ZDRTM%GkPz?m>IF}6J}wCY8)UH94)=ee6ZqjlnF(5eB{W}<#=gU%1{PY*Am z?1oonstRXU7G~GNXg(2I=It^et&p|#%LJzdE+;HZh8=!`jnkW6n^aVC;3&qmR7agi z%}`UJHXHRDcAUQC1#+br3halMb6iPy9Ns|Vbk{2b&1w!sKf2s%R2D}!)Hr?FODj#u z0Yr!vx?45JrNKZErkW1F!N%z;UK_Jaqc$1sN!a5Q*SNZgFhO@{8)lrIiuTfNB9I6q z0*SzY1TH@%UlFqTf_#IiB46YF`6p-DxJ|wzWc^ELzx3Q$E*-i1@sG}D{D!lveeQfl zzdHNqflIURoh2K)lo+4BP42XEk3V~A|F-|%Ant$v+h;x|J7e(%-2eMUidGt<2^NAx z1q`?M+HF(u$}5GjP~k(inwA)yu(DmuI{bzT*}|!VRk*DO9)jzRI&lFNw8qemHBoJY zhHRugbwEBC$MSx7xxl!X$KeeVvXOAyphYR6=tsvOM`dwz1BGm)J!p^yH!vVVG}+y% zhUXSPAw-iMenW+9q&;ZhRy3$B#NZuuVvpmzt|f>NgLn9)knQ}bCs`ALL?97J1QLNn rAQ4Ce5`jb@5LnxDX91%h{3*b$I~~ZLI170e_W$3uj&FVZ+V6h?=HTX6 literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/daytrader8/resources/data/tradedb/service.properties b/src/test/resources/test-applications/daytrader8/resources/data/tradedb/service.properties new file mode 100644 index 00000000..420cab1f --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/resources/data/tradedb/service.properties @@ -0,0 +1,23 @@ +#/Users/jdmcclur/git/sample.daytrader8/target/liberty/wlp/usr/shared/resources/data/tradedb +# ******************************************************************** +# *** Please do NOT edit this file. *** +# *** CHANGING THE CONTENT OF THIS FILE MAY CAUSE DATA CORRUPTION. *** +# ******************************************************************** +#Fri Jan 11 09:46:30 CST 2019 +SysschemasIndex2Identifier=225 +SyscolumnsIdentifier=144 +SysconglomeratesIndex1Identifier=49 +SysconglomeratesIdentifier=32 +SyscolumnsIndex2Identifier=177 +SysschemasIndex1Identifier=209 +SysconglomeratesIndex3Identifier=81 +SystablesIndex2Identifier=129 +SyscolumnsIndex1Identifier=161 +derby.serviceProtocol=org.apache.derby.database.Database +SysschemasIdentifier=192 +derby.storage.propertiesId=16 +SysconglomeratesIndex2Identifier=65 +derby.serviceLocale=en_US +SystablesIdentifier=96 +SystablesIndex1Identifier=113 +#--- last line, don't put anything after this line --- diff --git a/src/test/resources/test-applications/daytrader8/scripts/buildAll.sh b/src/test/resources/test-applications/daytrader8/scripts/buildAll.sh new file mode 100755 index 00000000..f57b6890 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/scripts/buildAll.sh @@ -0,0 +1,20 @@ +cd "$(dirname "$0")" +cd .. + +mvn clean package +cp target/io.openliberty.sample.daytrader8.war scripts/io.openliberty.sample.daytrader8.war + +cd scripts +./switchToWF.sh +cd .. +mvn clean package +cp target/io.openliberty.sample.daytrader8.war scripts/io.openliberty.sample.daytrader8-WF.war +cd scripts +./switchFromWF.sh + +./switchToPayara.sh +cd .. +mvn clean package +cp target/io.openliberty.sample.daytrader8.war scripts/io.openliberty.sample.daytrader8-Payara.war +cd scripts +./switchFromPayara.sh diff --git a/src/test/resources/test-applications/daytrader8/scripts/switchFromPayara.sh b/src/test/resources/test-applications/daytrader8/scripts/switchFromPayara.sh new file mode 100755 index 00000000..870c5695 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/scripts/switchFromPayara.sh @@ -0,0 +1,16 @@ +#!/bin/bash +cd "$(dirname "$0")" + +transform () { + sed -i.bak "s#@ActivationConfigProperty(propertyName = \"destination\", propertyValue = \"T#//@ActivationConfigProperty(propertyName = \"destination\", propertyValue = \"T#" $1 + sed -i.bak "s#//@ActivationConfigProperty(propertyName = \"destination\", propertyValue = \"j#@ActivationConfigProperty(propertyName = \"destination\", propertyValue = \"j#" $1 + rm $1.bak +} + +transform "../src/main/java/com/ibm/websphere/samples/daytrader/mdb/DTBroker3MDB.java" +transform "../src/main/java/com/ibm/websphere/samples/daytrader/mdb/DTStreamer3MDB.java" + +mv ../src/main/java/com/ibm/websphere/samples/daytrader/web/prims/ejb3/PingServlet2MDBQueue.java_bak ../src/main/java/com/ibm/websphere/samples/daytrader/web/prims/ejb3/PingServlet2MDBQueue.java +mv ../src/main/java/com/ibm/websphere/samples/daytrader/web/prims/ejb3/PingServlet2MDBTopic.java_bak ../src/main/java/com/ibm/websphere/samples/daytrader/web/prims/ejb3/PingServlet2MDBTopic.java + + diff --git a/src/test/resources/test-applications/daytrader8/scripts/switchFromWF.sh b/src/test/resources/test-applications/daytrader8/scripts/switchFromWF.sh new file mode 100755 index 00000000..4215abe3 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/scripts/switchFromWF.sh @@ -0,0 +1,17 @@ +#!/bin/bash +cd "$(dirname "$0")" + +transform () { + sed -i.bak "s#@Resource(name = \"java#//@Resource(name = \"java#" $1 + sed -i.bak "s#@Resource(lookup = \"java#//@Resource(lookup = \"java#" $1 + sed -i.bak "s#//@Resource(name = \"jm#@Resource(name = \"jm#" $1 + sed -i.bak "s#//@Resource(lookup = \"jm#@Resource(lookup = \"jm#" $1 + sed -i.bak "s#//@Resource(lookup = \"jd#@Resource(lookup = \"jd#" $1 + rm $1.bak +} + +transform "../src/main/java/com/ibm/websphere/samples/daytrader/impl/ejb3/TradeSLSBBean.java" +transform "../src/main/java/com/ibm/websphere/samples/daytrader/impl/direct/TradeDirect.java" +transform "../src/main/java/com/ibm/websphere/samples/daytrader/impl/direct/TradeDirectDBUtils.java" + + diff --git a/src/test/resources/test-applications/daytrader8/scripts/switchToPayara.sh b/src/test/resources/test-applications/daytrader8/scripts/switchToPayara.sh new file mode 100755 index 00000000..c8b7f34b --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/scripts/switchToPayara.sh @@ -0,0 +1,16 @@ +#!/bin/bash +cd "$(dirname "$0")" + +transform () { + sed -i.bak "s#//@ActivationConfigProperty(propertyName = \"destination\", propertyValue = \"T#@ActivationConfigProperty(propertyName = \"destination\", propertyValue = \"T#" $1 + sed -i.bak "s#@ActivationConfigProperty(propertyName = \"destination\", propertyValue = \"j#//@ActivationConfigProperty(propertyName = \"destination\", propertyValue = \"j#" $1 + rm $1.bak +} + +transform "../src/main/java/com/ibm/websphere/samples/daytrader/mdb/DTBroker3MDB.java" +transform "../src/main/java/com/ibm/websphere/samples/daytrader/mdb/DTStreamer3MDB.java" + +mv ../src/main/java/com/ibm/websphere/samples/daytrader/web/prims/ejb3/PingServlet2MDBQueue.java ../src/main/java/com/ibm/websphere/samples/daytrader/web/prims/ejb3/PingServlet2MDBQueue.java_bak +mv ../src/main/java/com/ibm/websphere/samples/daytrader/web/prims/ejb3/PingServlet2MDBTopic.java ../src/main/java/com/ibm/websphere/samples/daytrader/web/prims/ejb3/PingServlet2MDBTopic.java_bak + + diff --git a/src/test/resources/test-applications/daytrader8/scripts/switchToWF.sh b/src/test/resources/test-applications/daytrader8/scripts/switchToWF.sh new file mode 100755 index 00000000..79415a57 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/scripts/switchToWF.sh @@ -0,0 +1,17 @@ +#!/bin/bash +cd "$(dirname "$0")" + +transform () { + sed -i.bak "s#//@Resource(name = \"java#@Resource(name = \"java#" $1 + sed -i.bak "s#//@Resource(lookup = \"java#@Resource(lookup = \"java#" $1 + sed -i.bak "s#@Resource(name = \"jm#//@Resource(name = \"jm#" $1 + sed -i.bak "s#@Resource(lookup = \"jm#//@Resource(lookup = \"jm#" $1 + sed -i.bak "s#@Resource(lookup = \"jd#//@Resource(lookup = \"jd#" $1 + rm $1.bak +} + +transform "../src/main/java/com/ibm/websphere/samples/daytrader/impl/ejb3/TradeSLSBBean.java" +transform "../src/main/java/com/ibm/websphere/samples/daytrader/impl/direct/TradeDirect.java" +transform "../src/main/java/com/ibm/websphere/samples/daytrader/impl/direct/TradeDirectDBUtils.java" + + diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/META-INF/DEPENDENCIES b/src/test/resources/test-applications/daytrader8/src/main/java/META-INF/DEPENDENCIES new file mode 100644 index 00000000..cb8878a9 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/META-INF/DEPENDENCIES @@ -0,0 +1,15 @@ +// ------------------------------------------------------------------ +// Transitive dependencies of this project determined from the +// maven pom organized by organization. +// ------------------------------------------------------------------ + +DayTrader :: Web Application + + +From: 'an unknown organization' + - Unnamed - taglibs:standard:jar:1.1.1 taglibs:standard:jar:1.1.1 + + + + + diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/META-INF/LICENSE b/src/test/resources/test-applications/daytrader8/src/main/java/META-INF/LICENSE new file mode 100644 index 00000000..d6456956 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/META-INF/LICENSE @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/build.properties b/src/test/resources/test-applications/daytrader8/src/main/java/build.properties new file mode 100644 index 00000000..de47f1c7 --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/build.properties @@ -0,0 +1,17 @@ +## +## (C) Copyright IBM Corporation 2015. +## +## Licensed under the Apache License, Version 2.0 (the "License"); +## you may not use this file except in compliance with the License. +## You may obtain a copy of the License at +## +## http://www.apache.org/licenses/LICENSE-2.0 +## +## Unless required by applicable law or agreed to in writing, software +## distributed under the License is distributed on an "AS IS" BASIS, +## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +## See the License for the specific language governing permissions and +## limitations under the License. +## + +ejb_version=${pom.version} diff --git a/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/beans/MarketSummaryDataBean.java b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/beans/MarketSummaryDataBean.java new file mode 100644 index 00000000..b899509f --- /dev/null +++ b/src/test/resources/test-applications/daytrader8/src/main/java/com/ibm/websphere/samples/daytrader/beans/MarketSummaryDataBean.java @@ -0,0 +1,287 @@ +/** + * (C) Copyright IBM Corporation 2015. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ibm.websphere.samples.daytrader.beans; + +import java.io.Serializable; +import java.math.BigDecimal; +import java.util.ArrayList; +import java.util.Collection; +import java.util.Date; +import java.util.Iterator; + +import javax.json.Json; +import javax.json.JsonObject; +import javax.json.JsonObjectBuilder; + +import com.ibm.websphere.samples.daytrader.entities.QuoteDataBean; +import com.ibm.websphere.samples.daytrader.util.FinancialUtils; +import com.ibm.websphere.samples.daytrader.util.Log; +import com.ibm.websphere.samples.daytrader.util.TradeConfig; + +public class MarketSummaryDataBean implements Serializable { + + private static final long serialVersionUID = 650652242288745600L; + private BigDecimal TSIA; /* Trade Stock Index Average */ + private BigDecimal openTSIA; /* Trade Stock Index Average at the open */ + private double volume; /* volume of shares traded */ + private Collection topGainers; /* + * Collection of top gaining + * stocks + */ + private Collection topLosers; /* + * Collection of top losing + * stocks + */ + // FUTURE private Collection topVolume; /* Collection of top stocks by + // volume */ + private Date summaryDate; /* Date this summary was taken */ + + // cache the gainPercent once computed for this bean + private BigDecimal gainPercent = null; + + public MarketSummaryDataBean() { + } + + public MarketSummaryDataBean(BigDecimal TSIA, BigDecimal openTSIA, double volume, Collection topGainers, Collection topLosers// , Collection topVolume + ) { + setTSIA(TSIA); + setOpenTSIA(openTSIA); + setVolume(volume); + setTopGainers(topGainers); + setTopLosers(topLosers); + setSummaryDate(new java.sql.Date(System.currentTimeMillis())); + gainPercent = FinancialUtils.computeGainPercent(getTSIA(), getOpenTSIA()); + + } + + public static MarketSummaryDataBean getRandomInstance() { + Collection gain = new ArrayList(); + Collection lose = new ArrayList(); + + for (int ii = 0; ii < 5; ii++) { + QuoteDataBean quote1 = QuoteDataBean.getRandomInstance(); + QuoteDataBean quote2 = QuoteDataBean.getRandomInstance(); + + gain.add(quote1); + lose.add(quote2); + } + + return new MarketSummaryDataBean(TradeConfig.rndBigDecimal(1000000.0f), TradeConfig.rndBigDecimal(1000000.0f), TradeConfig.rndQuantity(), gain, lose); + } + + @Override + public String toString() { + String ret = "\n\tMarket Summary at: " + getSummaryDate() + "\n\t\t TSIA:" + getTSIA() + "\n\t\t openTSIA:" + getOpenTSIA() + + "\n\t\t gain:" + getGainPercent() + "\n\t\t volume:" + getVolume(); + + if ((getTopGainers() == null) || (getTopLosers() == null)) { + return ret; + } + ret += "\n\t\t Current Top Gainers:"; + Iterator it = getTopGainers().iterator(); + while (it.hasNext()) { + QuoteDataBean quoteData = it.next(); + ret += ("\n\t\t\t" + quoteData.toString()); + } + ret += "\n\t\t Current Top Losers:"; + it = getTopLosers().iterator(); + while (it.hasNext()) { + QuoteDataBean quoteData = it.next(); + ret += ("\n\t\t\t" + quoteData.toString()); + } + return ret; + } + + public String toHTML() { + String ret = "
    Market Summary at: " + getSummaryDate() + "

    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
    y^3yMO=^g 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

0eps!#CB5xt`F(f;@q9 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 literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/flower_coleus.jpg b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/flower_coleus.jpg new file mode 100755 index 0000000000000000000000000000000000000000..c2afcaaf5d93cd23850975e3121d8d74594bceb4 GIT binary patch literal 71452 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 z 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 z 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 literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/flower_foxglove.jpg b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/flower_foxglove.jpg new file mode 100755 index 0000000000000000000000000000000000000000..5c70aa0023d0ce4367a7ecf5c90dc11a1fcf43a1 GIT binary patch literal 66964 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 literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/flower_geranium.jpg b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/flower_geranium.jpg new file mode 100755 index 0000000000000000000000000000000000000000..dac06e513eeb52c42cb22d48992c32f3e5b46230 GIT binary patch literal 58701 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â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%0Ad4ttg61dpb~&qWVtd(;3Ua_Ayulb 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

u1 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 PVezY_b!n#@aqIutI&~@u literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/accessories_gloves.jpg b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/accessories_gloves.jpg new file mode 100755 index 0000000000000000000000000000000000000000..fcbd878a67b66165d535826c9c89d084b2d80ad9 GIT binary patch literal 79865 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%0Ab7mwCuLv*x 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%0Anm;pc*mVPrfKdSsA^SbjiQi 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 Vd1<0*`f7YbkBRpG0F#Gb|Jm4A?wSAq literal 0 HcmV?d00001 diff --git a/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/accessories_handrake.jpg b/src/test/resources/test-applications/plantsbywebsphere/src/main/webapp/resources/images/accessories_handrake.jpg new file mode 100755 index 0000000000000000000000000000000000000000..9d6a59e51c11d3c1240ccc3cf7c11d46db49bdd3 GIT binary patch literal 66192 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