From be703038e3782ba6e52279205e13e6303bee6334 Mon Sep 17 00:00:00 2001
From: hkarwa2s <holger.karwanni@smail.inf.h-brs.de>
Date: Sun, 16 Apr 2017 16:15:57 +0200
Subject: [PATCH] =?UTF-8?q?Start=20Seite=20(Welcome)=20hinzugef=C3=BCgt.?=
 =?UTF-8?q?=20Mit=20Button=20auf=20MainView=20(Shop=20Seite)=20aufrufbar.?=
 =?UTF-8?q?=20Diverses=20Refactoring=20Login=20Button=20auf=20Start=20Seit?=
 =?UTF-8?q?e=20vorhanden,=20noch=20keinerlei=20Funktionen.?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 nbactions.xml                                 |   2 +-
 src/main/java/org/s4s/MyUI.java               |  57 ++----------
 src/main/java/org/s4s/gui/views/MainView.java |  81 ++++++++++++++++++
 .../java/org/s4s/gui/views/WelcomeView.java   |  59 +++++++++++++
 .../java/org/s4s/services/util/Views.java     |  15 ++++
 target/classes/org/s4s/MyUI$MyUIServlet.class | Bin 613 -> 613 bytes
 target/classes/org/s4s/MyUI.class             | Bin 2717 -> 1200 bytes
 .../compile/default-compile/createdFiles.lst  |   4 +-
 .../compile/default-compile/inputFiles.lst    |   5 ++
 9 files changed, 173 insertions(+), 50 deletions(-)
 create mode 100644 src/main/java/org/s4s/gui/views/MainView.java
 create mode 100644 src/main/java/org/s4s/gui/views/WelcomeView.java
 create mode 100644 src/main/java/org/s4s/services/util/Views.java

diff --git a/nbactions.xml b/nbactions.xml
index 96f859f..fcf2484 100644
--- a/nbactions.xml
+++ b/nbactions.xml
@@ -26,7 +26,7 @@
             <actionName>CUSTOM-run jetty</actionName>
             <displayName>run jetty</displayName>
             <goals>
-                <goal>jetty:run</goal>
+                <goal>jetty:run-war</goal>
             </goals>
         </action>
         <action>
diff --git a/src/main/java/org/s4s/MyUI.java b/src/main/java/org/s4s/MyUI.java
index 9360b11..fe05eff 100644
--- a/src/main/java/org/s4s/MyUI.java
+++ b/src/main/java/org/s4s/MyUI.java
@@ -6,6 +6,7 @@ import com.vaadin.annotations.Theme;
 import com.vaadin.annotations.Title;
 import com.vaadin.annotations.VaadinServletConfiguration;
 import com.vaadin.data.util.BeanContainer;
+import com.vaadin.navigator.Navigator;
 import com.vaadin.server.FontAwesome;
 import com.vaadin.server.VaadinRequest;
 import com.vaadin.server.VaadinServlet;
@@ -21,8 +22,11 @@ import com.vaadin.ui.TextField;
 import com.vaadin.ui.UI;
 import com.vaadin.ui.VerticalLayout;
 import java.util.List;
+import org.s4s.gui.views.MainView;
+import org.s4s.gui.views.WelcomeView;
 import org.s4s.modell.objects.dto.Product;
 import org.s4s.process.controll.ProductSearch;
+import org.s4s.services.util.Views;
 
 /**
  * This UI is the application entry point. A UI may either represent a browser window 
@@ -37,56 +41,13 @@ public class MyUI extends UI {
 
     @Override
     protected void init(VaadinRequest vaadinRequest) {
-        Label label = new Label("Das erste Label unseres Shop in Shop System");
-     //   setContent(label);
-        final VerticalLayout layout = new VerticalLayout();
-        layout.setMargin(true);
-        setContent(layout);
+        Navigator navi = new Navigator ( this , this );
+        navi.addView(Views.MAIN, MainView.class );
+        navi.addView(Views.WELCOME, WelcomeView.class);
         
-        
-        final HorizontalLayout horizontalLayout = new HorizontalLayout();
-        
-        
-        TextField textfield = new TextField();
-        Button button = new Button("Suche" , FontAwesome.SEARCH);
-        
-        horizontalLayout.addComponent(textfield);
-        horizontalLayout.addComponent(button);
-        
-        
-        layout.addComponent(label);
-        layout.setComponentAlignment(label, Alignment.TOP_LEFT);
-        layout.addComponent(horizontalLayout);
-        layout.setComponentAlignment(horizontalLayout, Alignment.TOP_RIGHT);
-        
-   
-    
-      
-        final BeanContainer<Integer, Product> data = new BeanContainer<Integer, Product>(Product.class);
-        data.setBeanIdProperty("id");
-        final Table table = new Table ("Products" , data);
-        table.setSizeFull();
-        table.setSelectable(true);
-        
-        
-        button.addClickListener(new Button.ClickListener() {
-        @Override
-        public void buttonClick(ClickEvent event){
-          String str = textfield.getValue();
-          
-          if(str.equals("")){
-              Notification.show(null, "Bitte gesuchtes Produkt eingeben!", Notification.Type.WARNING_MESSAGE);
-          } else{
-              layout.addComponent(table);
-              
-              List<Product> liste = ProductSearch.getInstance().getProductByTyp(str);
-              data.removeAllItems();
-              data.addAll(liste);
-              table.setPageLength(table.size());
-          }
-      }
-      });
+        UI.getCurrent().getNavigator().navigateTo(Views.WELCOME);
     }
+   
     
 
     @WebServlet(urlPatterns = "/*", name = "MyUIServlet", asyncSupported = true)
diff --git a/src/main/java/org/s4s/gui/views/MainView.java b/src/main/java/org/s4s/gui/views/MainView.java
new file mode 100644
index 0000000..00e5e50
--- /dev/null
+++ b/src/main/java/org/s4s/gui/views/MainView.java
@@ -0,0 +1,81 @@
+/*
+ * To change this license header, choose License Headers in Project Properties.
+ * To change this template file, choose Tools | Templates
+ * and open the template in the editor.
+ */
+package org.s4s.gui.views;
+
+import com.vaadin.data.util.BeanContainer;
+import com.vaadin.navigator.View;
+import com.vaadin.navigator.ViewChangeListener;
+import com.vaadin.server.FontAwesome;
+import com.vaadin.ui.Alignment;
+import com.vaadin.ui.Button;
+import com.vaadin.ui.HorizontalLayout;
+import com.vaadin.ui.Label;
+import com.vaadin.ui.Notification;
+import com.vaadin.ui.Table;
+import com.vaadin.ui.TextField;
+import com.vaadin.ui.VerticalLayout;
+import java.util.List;
+import org.s4s.modell.objects.dto.Product;
+import org.s4s.process.controll.ProductSearch;
+
+/**
+ *
+ * @author Holger
+ */
+public class MainView extends VerticalLayout implements View{
+
+    @Override
+    public void enter(ViewChangeListener.ViewChangeEvent event) {
+        this.setUp();
+    }
+    
+    
+     public void setUp(){
+     //   setSizeFull();
+        setMargin(true);
+        
+        final HorizontalLayout searchLayout = new HorizontalLayout();
+        final HorizontalLayout buttonLayout  = new HorizontalLayout();
+        
+        TextField textfield = new TextField();
+        Button button = new Button("Suche" , FontAwesome.SEARCH);
+        Label label = new Label("Das erste Label unseres Shop in Shop System");
+        
+        buttonLayout.addComponent(label);
+        buttonLayout.setComponentAlignment(label, Alignment.TOP_LEFT);
+        
+        searchLayout.addComponent(textfield);
+        searchLayout.addComponent(button);
+        buttonLayout.addComponent(searchLayout);
+        buttonLayout.setComponentAlignment(searchLayout, Alignment.TOP_RIGHT);
+        buttonLayout.setSizeFull();
+        addComponent(buttonLayout);
+        //setComponentAlignment(buttonLayout, Alignment.TOP_CENTER);
+        
+        
+        final BeanContainer<Integer, Product> data = new BeanContainer<>(Product.class);
+        data.setBeanIdProperty("id");
+        final Table table = new Table ("Products" , data);
+        table.setSizeFull();
+        table.setSelectable(true);
+        
+        
+        button.addClickListener((Button.ClickEvent event) -> {
+            String str = textfield.getValue().trim();
+            
+            if(str.equals("")){
+                Notification.show(null, "Bitte gesuchtes Produkt eingeben!", Notification.Type.WARNING_MESSAGE);
+            } else{
+                addComponent(table);
+                
+                List<Product> liste = ProductSearch.getInstance().getProductByTyp(str);
+                data.removeAllItems();
+                data.addAll(liste);
+                table.setPageLength(table.size());
+            }
+        });
+    }    
+}
diff --git a/src/main/java/org/s4s/gui/views/WelcomeView.java b/src/main/java/org/s4s/gui/views/WelcomeView.java
new file mode 100644
index 0000000..bfdc98c
--- /dev/null
+++ b/src/main/java/org/s4s/gui/views/WelcomeView.java
@@ -0,0 +1,59 @@
+/*
+ * To change this license header, choose License Headers in Project Properties.
+ * To change this template file, choose Tools | Templates
+ * and open the template in the editor.
+ */
+package org.s4s.gui.views;
+
+import com.vaadin.navigator.View;
+import com.vaadin.navigator.ViewChangeListener;
+import com.vaadin.ui.Alignment;
+import com.vaadin.ui.Button;
+import com.vaadin.ui.HorizontalLayout;
+import com.vaadin.ui.Label;
+import com.vaadin.ui.UI;
+import com.vaadin.ui.VerticalLayout;
+import org.s4s.services.util.Views;
+
+/**
+ *
+ * @author Holger
+ */
+public class WelcomeView extends VerticalLayout implements View{
+
+    @Override
+    public void enter(ViewChangeListener.ViewChangeEvent event) {
+        this.setUp();
+    }
+    
+    public void setUp(){
+        setSizeFull();
+        setMargin(true);
+        final HorizontalLayout horizontalLayout = new HorizontalLayout();
+        final HorizontalLayout buttonLayout = new HorizontalLayout();
+        
+        
+        Button sucheButton = new Button("Besuche Shop");
+        buttonLayout.addComponent(sucheButton);
+        buttonLayout.setComponentAlignment(sucheButton, Alignment.TOP_LEFT);
+        
+        
+        Button loginButton = new Button("Login");
+        buttonLayout.addComponent(loginButton);
+        buttonLayout.setComponentAlignment(loginButton, Alignment.TOP_RIGHT);
+        
+        
+        addComponent(buttonLayout);
+        buttonLayout.setSizeFull();
+        sucheButton.addClickListener((Button.ClickEvent event) ->{
+           UI.getCurrent().getNavigator().navigateTo(Views.MAIN);   
+        });
+       
+        Label label = new Label("Willkommen in unserem Shop in Shop System!");
+        horizontalLayout.addComponent(label);
+        horizontalLayout.setComponentAlignment(label, Alignment.MIDDLE_CENTER);
+        addComponent(horizontalLayout);
+        setComponentAlignment(horizontalLayout, Alignment.TOP_CENTER);
+    }
+    
+}
diff --git a/src/main/java/org/s4s/services/util/Views.java b/src/main/java/org/s4s/services/util/Views.java
new file mode 100644
index 0000000..9cf7f09
--- /dev/null
+++ b/src/main/java/org/s4s/services/util/Views.java
@@ -0,0 +1,15 @@
+/*
+ * To change this license header, choose License Headers in Project Properties.
+ * To change this template file, choose Tools | Templates
+ * and open the template in the editor.
+ */
+package org.s4s.services.util;
+
+/**
+ *
+ * @author Holger
+ */
+public class Views {
+    public final static String WELCOME = "welcome";
+    public final static String MAIN = "main";
+}
diff --git a/target/classes/org/s4s/MyUI$MyUIServlet.class b/target/classes/org/s4s/MyUI$MyUIServlet.class
index 6e384c0fbc9b8b32e3ac5ce4142019326d2a0a9e..6f0ae277adc91764a43f3225c09b1cb007100a33 100644
GIT binary patch
delta 13
UcmaFL@|0x*4-=#LWL~BS03c%n!vFvP

delta 13
UcmaFL@|0x*4-;eDWL~BS03jv=>Hq)$

diff --git a/target/classes/org/s4s/MyUI.class b/target/classes/org/s4s/MyUI.class
index 57da999953d803a007acf2367511332fa9dffe1f..2a3154d514c76342ccfae7133f33c5850b7e0e14 100644
GIT binary patch
literal 1200
zcmah|YflqF6g|@iTbAYF@{osULBtjd3yRNz#xyY@DSV(<<Hw<$lrh^`+?_4qXZZz<
zCjJ0_l=05Cm7+xV!_3}u&pr3d?A;$fzkUa>jaN3taNk0~MhZm>YdJiyP%_ba4jUFc
zL)bLSmH{7Hcw}MQ!efS!{qwhbH4%1vp&6V#r9@cqc@&9=VQ5Dxsb4ar3&lD^rV=y-
z!+2FHaS*qUMR>%IeL~!7(BOWZhtkA7Fr!Z-X^d5au;oSDk!L!UNyTU~tQ4w^pzU=y
zZ%XAw<UoX8J&6v*$5=$VY<iA%2|b8m>AzLfLGg}c$PZEt)Z#h_y@UQ6d9iCj95%!o
zX-+Y03~qej9nLU!7%MH?qAnvzM|!PPpt+WTq7&U7)a92M@90Fd1*v8`+>c4nYM*NZ
z{i{T3-;_ADli)NjRo?6lTuf5Y!2Mif->{xAEcCC}T%l};$cwe~y}A@<<TcagQZdZ;
zNv&9V9h36*DPc$sp5hsKJrh3lBd?2pbKiAyUHWspa8SmMgI&;QIDNXgJ%)(^)6~mA
zvxAJ4EAzH{We5^}dGK}#sY%uHMI~sT21+Ph36v)1B21>k;?1UU#jskanlI=1T(!KK
z4ymd<fFvWGl-MnyD{&Z-7Q<Ab_(!{BL>=P%9utP;tE_9jg&CzDERF((>1*5+>sZ1l
z{e$L7f&Lmy(mF+vM?0fEyY?CEQ<9#hbtnM~n4x#4OTbOcQk20Q<_R&ynxZuAtKX1%
zzeWn_{gRt?hb~~1+?+d1`xn?37;$qKa4ywnkfo{;Y^;-&4bt1hJ!~c2@?FJVH`2xe
tZc#s*)<xVV`)S;v>J;*HD3Fg7mMMQX!U~BbFRQpg8JmJ}I`#yHe*ss&E-U~5

literal 2717
zcma)8TXz#x6#k}7GD$k+652wbK!74?p#&6A+KTo<X(6T9lwuIXX>w=>CNpJbQfL(g
z6)!xwmXE&b50Hm+Ewh$Cz#rxEJCig_QmW?RT=xF<eV?8A>+e7Q1aJ;7<LJXR71=0e
z;%LKl6|-@KaZN5a;y8wnRLsQ@lb~E29de(K;${pBxD`hyK9<b9gy&<pjZft1jy&B}
z@u`Y?arEG`D0I0mswhNJjN<@=T<*(dNyTy;DHu}Q0~HTdm?}yNI%d{xPUnQPY6?$*
zHf>qL88>y;6|REFh+!GtB?ay2{sjf0al0rK?93XLxLz(T3TIwlG)YNh?SgJD=#C-p
zbz;a{HmGAq)^?UM?m0IjEe%tP)Ty8^oh{g<%&M*z4J+f)1L0&A{M(#(R2Hr`ENyny
z0CkdrBmXI-AZ+T3!c@>5#FmXrR+8yK#MIa9GJQDI0$31^XE2hi&nI%%vh5h_w&iWo
z6r@^Yrdkk`ih1IRci#|ZQ9-f=K2O%9WJy03%bsUj3VK>VV?LdTP*L}E<|@dSq)gc}
z%*>e3t#Rob>){X`_G;y5joU8>`8~~LT3gvH)!qN0e<b@rU)3|FZY^b|El(`bWTUht
zHil_t?8OJ7;JKNiXJ>9WcClRWhA+`@JZG1kf|xX9v&3W{oR-R%ow>5*86~k`xCT3C
z)Us?(_YB)&<1`gVf6d9vFN>0p;jZdtnF`g?nkPyBCSrJ|6wz|a_DagIQgYXjM!$kR
zfi~Q15(OtGbT=g&*ApqfZBk{6Jt|yZa#KSpw?;roDq<CTn-w)TlLi~K_y`W&YzDS=
zkb=F<fJV<K=xXNF8ilFIl?%&4g{#3sS^Bf8;V~Q)Pc*DyUBl=2Lc>$6D>xcZu}v=#
zwE1YaudKB4rGhr2sNpL-+mguo7>L#zfv%<TT*KGs*YFKiI2kr=$cE@UEBW7Qc!3{S
zryz^ZFyJyvbaPt4z96EnX^3^F1Ff3#9K%}jM@h^T-i+=n8LU+(eOpeKI7#va35(O9
zw`n5L&bVD#u`Tj^@q+;;>f>sXqN9(6Ys=<~<SviSjZY~!9DGe%k!-`WZ}9L9LUYtC
z-;Hlx(~HH1Lt9#8)HIf?k{?ENe)h(_?B&V%t;45*q7U7E==A^_3<c-6&qB~erl%oP
z%dRv#H+^M_cDsV{`Tr(9WH(L9nKfNxPpoj(uF;Jkbk?6AKK4wIUN2(MzTdg8ho3BF
z2i50{bun2sIs7~2O_-cVwW0Vt-I!MXA5l;lgK506;TA^oGj8S9Mr%-Hn<wQ5wM*8}
zGzt&12ImHcwu&F=X%k7oiPj3#UU^>=%-0uu%8cPnI2_^UMIS#yzz+|FPpqHo0B;%Y
z3it5929)1@_DQZ0pV)^}JZm)o2639V5Jk?ALSf}8qWmBMeygG_pJ?AeXr_vAegl!~
zgP{u4fx!x*Rm4b%4~44e;6WP-SJ9bI?0AKp8`w1zNrsZ)3U+gga2q^TL1OUKE9|MD
zYcNSI39hfu&1)4s`NZB0>>E;(Y9d*|{wfaS6TL}w0|$qq$!G<Kl2M8rPDZLo<p+}C
z!DLi&k5q6}2G<T5+#I^NrV(cl2~zel%wC3d9B(tkcQAtU7{>)%#YN0w2)8hdyQJR7
zC@1$Ao{;+j6L^Ws_z6?^6?s2VcWTL~CyHsoS!(2X!7tQ$j+sy3XX?H{KaS%W-o<-N
z=V?ypi?kA^1%sAGnEXdXzmH2$X(xpb@F5dDN}pvZYP>P>+UbX^=LG!#V`{@B`Bz-J
dG+jGf#R+ou`}U6EE&7+@UH-n~2jKUS*gww<<vsua

diff --git a/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst b/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst
index 39bed80..d38b2aa 100644
--- a/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst
+++ b/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst
@@ -1,5 +1,7 @@
 org\s4s\modell\objects\dto\Product.class
+org\s4s\gui\views\WelcomeView.class
 org\s4s\process\controll\ProductSearch.class
 org\s4s\MyUI.class
+org\s4s\services\util\Views.class
 org\s4s\MyUI$MyUIServlet.class
-org\s4s\MyUI$1.class
+org\s4s\gui\views\MainView.class
diff --git a/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst b/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst
index 775437f..4baeefa 100644
--- a/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst
+++ b/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst
@@ -1 +1,6 @@
+C:\Users\Holger\Documents\NetBeansProjects\s4s\src\main\java\org\s4s\process\controll\ProductSearch.java
 C:\Users\Holger\Documents\NetBeansProjects\s4s\src\main\java\org\s4s\MyUI.java
+C:\Users\Holger\Documents\NetBeansProjects\s4s\src\main\java\org\s4s\modell\objects\dto\Product.java
+C:\Users\Holger\Documents\NetBeansProjects\s4s\src\main\java\org\s4s\gui\views\WelcomeView.java
+C:\Users\Holger\Documents\NetBeansProjects\s4s\src\main\java\org\s4s\services\util\Views.java
+C:\Users\Holger\Documents\NetBeansProjects\s4s\src\main\java\org\s4s\gui\views\MainView.java
-- 
GitLab