diff --git a/.classpath b/.classpath index 35694f1..463f020 100644 --- a/.classpath +++ b/.classpath @@ -3,7 +3,7 @@ - + diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..5027ed0 --- /dev/null +++ b/.gitignore @@ -0,0 +1,5 @@ +gwt-unitCache/ +test-classes/ +war/WEB-INF/classes/ +war/gitlab/ + diff --git a/src/ca/ubc/cpsc310/gitlab/client/GitLab.java b/src/ca/ubc/cpsc310/gitlab/client/GitLab.java index 8bde00a..e64114a 100644 --- a/src/ca/ubc/cpsc310/gitlab/client/GitLab.java +++ b/src/ca/ubc/cpsc310/gitlab/client/GitLab.java @@ -1,5 +1,11 @@ package ca.ubc.cpsc310.gitlab.client; +import java.util.ArrayList; +import java.util.List; + +import ca.ubc.cpsc310.gitlab.client.products.ProductItem; +import ca.ubc.cpsc310.gitlab.client.user.IUser; +import ca.ubc.cpsc310.gitlab.client.user.User; import ca.ubc.cpsc310.gitlab.shared.FieldVerifier; import com.google.gwt.core.client.EntryPoint; import com.google.gwt.core.client.GWT; @@ -12,7 +18,9 @@ import com.google.gwt.user.client.rpc.AsyncCallback; import com.google.gwt.user.client.ui.Button; import com.google.gwt.user.client.ui.DialogBox; +import com.google.gwt.user.client.ui.FlexTable; import com.google.gwt.user.client.ui.HTML; +import com.google.gwt.user.client.ui.Image; import com.google.gwt.user.client.ui.Label; import com.google.gwt.user.client.ui.RootPanel; import com.google.gwt.user.client.ui.TextBox; @@ -30,13 +38,53 @@ public class GitLab implements EntryPoint { + "attempting to contact the server. Please check your network " + "connection and try again."; - + private final FlexTable flexTable = new FlexTable(); /** * This is the entry point method. */ public void onModuleLoad() { - Window.alert("Loaded"); + + + } + + /** + * Used to display users + * @param users + */ + public void displayUsers(List users) + { + + RootPanel.get("root").add(flexTable); + + flexTable.setText(0,0, "Name"); + + flexTable.setText(0,1,"Language"); + flexTable.setText(0,2, "Shopping Cart Size"); + flexTable.setText(0,3, "Wish List Size"); + flexTable.setStyleName("centered-table", true); + + for(int i=0; i < users.size(); i++) + { + + IUser user = users.get(i); + + flexTable.setText(i+1,0,user.getName()); + if(user.getLanguage().trim().equals("EN")) + { + flexTable.setWidget(i+1, 1, new Image("uk.png")); + } else if (user.getLanguage().trim().equals("FR")) + { + flexTable.setWidget(i+1, 1, new Image("fr.png")); + } else + { + flexTable.setText(i+1,1,user.getLanguage()); + } + + flexTable.setText(i+1,2,String.valueOf(user.getShoppingCart().size())); + + flexTable.setText(i+1,3,String.valueOf(user.getWishList().size())); + } } } diff --git a/src/ca/ubc/cpsc310/gitlab/client/user/User.java b/src/ca/ubc/cpsc310/gitlab/client/user/User.java new file mode 100644 index 0000000..f4dd692 --- /dev/null +++ b/src/ca/ubc/cpsc310/gitlab/client/user/User.java @@ -0,0 +1,83 @@ +package ca.ubc.cpsc310.gitlab.client.user; + +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +import ca.ubc.cpsc310.gitlab.client.products.ProductItem; + +@SuppressWarnings("unchecked") +public class User implements IUser { + + /** + * + */ + private static final long serialVersionUID = -6968277136462621810L; + private final String LANG = "LANG"; + private final String NAME = "NAME"; + private final String WISHLIST = "WISHLIST"; + private final String SHOPPINGCART = "SHOPPINGCART"; + + private Map data = new HashMap(); + public User() + { + data.put(WISHLIST, new ArrayList()); + data.put(SHOPPINGCART, new ArrayList()); + } + + @Override + public String getLanguage() { + return (String) data.get(LANG); + } + + @Override + public String getName() { + return (String) data.get(NAME); + } + + @Override + public List getWishList() { + return (List) data.get(WISHLIST); + } + + @Override + public List getShoppingCart() { + return (List) data.get(SHOPPINGCART); + } + + @Override + public void setLanguage(String language) { + data.put(LANG,language); + + } + + @Override + public void setName(String name) { + data.put(NAME, name); + + } + + @Override + public void addItemToWishList(ProductItem o) { + ((List) data.get(WISHLIST)).add(o); + } + + @Override + public void addItemToShoppingCart(ProductItem o) { + ((List) data.get(SHOPPINGCART)).add(o); + + } + + @Override + public void removeItemFromWishList(ProductItem o) { + ((List) data.get(WISHLIST)).remove(o); + } + + @Override + public void removeItemFromShoppingCart(ProductItem o) { + ((List) data.get(SHOPPINGCART)).add(o); + } + + +} diff --git a/test/emptyFile b/test/emptyFile new file mode 100644 index 0000000..e69de29 diff --git a/war/WEB-INF/classes/META-INF/jdoconfig.xml b/war/WEB-INF/classes/META-INF/jdoconfig.xml deleted file mode 100644 index 9966473..0000000 --- a/war/WEB-INF/classes/META-INF/jdoconfig.xml +++ /dev/null @@ -1,16 +0,0 @@ - - - - - - - - - - - - - diff --git a/war/WEB-INF/classes/META-INF/persistence.xml b/war/WEB-INF/classes/META-INF/persistence.xml deleted file mode 100644 index 55dc331..0000000 --- a/war/WEB-INF/classes/META-INF/persistence.xml +++ /dev/null @@ -1,15 +0,0 @@ - - - - - org.datanucleus.api.jpa.PersistenceProviderImpl - - - - - - - diff --git a/war/WEB-INF/classes/ca/ubc/cpsc310/gitlab/GitLab.gwt.xml b/war/WEB-INF/classes/ca/ubc/cpsc310/gitlab/GitLab.gwt.xml deleted file mode 100644 index 5fb9d59..0000000 --- a/war/WEB-INF/classes/ca/ubc/cpsc310/gitlab/GitLab.gwt.xml +++ /dev/null @@ -1,29 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/war/WEB-INF/classes/ca/ubc/cpsc310/gitlab/client/GitLab$1.class b/war/WEB-INF/classes/ca/ubc/cpsc310/gitlab/client/GitLab$1.class deleted file mode 100644 index 360adab..0000000 Binary files a/war/WEB-INF/classes/ca/ubc/cpsc310/gitlab/client/GitLab$1.class and /dev/null differ diff --git a/war/WEB-INF/classes/ca/ubc/cpsc310/gitlab/client/GitLab$1MyHandler$1.class b/war/WEB-INF/classes/ca/ubc/cpsc310/gitlab/client/GitLab$1MyHandler$1.class deleted file mode 100644 index a81c75c..0000000 Binary files a/war/WEB-INF/classes/ca/ubc/cpsc310/gitlab/client/GitLab$1MyHandler$1.class and /dev/null differ diff --git a/war/WEB-INF/classes/ca/ubc/cpsc310/gitlab/client/GitLab$1MyHandler.class b/war/WEB-INF/classes/ca/ubc/cpsc310/gitlab/client/GitLab$1MyHandler.class deleted file mode 100644 index f950650..0000000 Binary files a/war/WEB-INF/classes/ca/ubc/cpsc310/gitlab/client/GitLab$1MyHandler.class and /dev/null differ diff --git a/war/WEB-INF/classes/ca/ubc/cpsc310/gitlab/client/GitLab.class b/war/WEB-INF/classes/ca/ubc/cpsc310/gitlab/client/GitLab.class deleted file mode 100644 index 0a1d097..0000000 Binary files a/war/WEB-INF/classes/ca/ubc/cpsc310/gitlab/client/GitLab.class and /dev/null differ diff --git a/war/WEB-INF/classes/ca/ubc/cpsc310/gitlab/client/GreetingService.class b/war/WEB-INF/classes/ca/ubc/cpsc310/gitlab/client/GreetingService.class deleted file mode 100644 index 0ba1a4a..0000000 Binary files a/war/WEB-INF/classes/ca/ubc/cpsc310/gitlab/client/GreetingService.class and /dev/null differ diff --git a/war/WEB-INF/classes/ca/ubc/cpsc310/gitlab/client/GreetingServiceAsync.class b/war/WEB-INF/classes/ca/ubc/cpsc310/gitlab/client/GreetingServiceAsync.class deleted file mode 100644 index 7a58154..0000000 Binary files a/war/WEB-INF/classes/ca/ubc/cpsc310/gitlab/client/GreetingServiceAsync.class and /dev/null differ diff --git a/war/WEB-INF/classes/ca/ubc/cpsc310/gitlab/server/GreetingServiceImpl.class b/war/WEB-INF/classes/ca/ubc/cpsc310/gitlab/server/GreetingServiceImpl.class deleted file mode 100644 index 628d58f..0000000 Binary files a/war/WEB-INF/classes/ca/ubc/cpsc310/gitlab/server/GreetingServiceImpl.class and /dev/null differ diff --git a/war/WEB-INF/classes/ca/ubc/cpsc310/gitlab/shared/FieldVerifier.class b/war/WEB-INF/classes/ca/ubc/cpsc310/gitlab/shared/FieldVerifier.class deleted file mode 100644 index 5604d6a..0000000 Binary files a/war/WEB-INF/classes/ca/ubc/cpsc310/gitlab/shared/FieldVerifier.class and /dev/null differ diff --git a/war/WEB-INF/classes/log4j.properties b/war/WEB-INF/classes/log4j.properties deleted file mode 100644 index d9c3edc..0000000 --- a/war/WEB-INF/classes/log4j.properties +++ /dev/null @@ -1,24 +0,0 @@ -# A default log4j configuration for log4j users. -# -# To use this configuration, deploy it into your application's WEB-INF/classes -# directory. You are also encouraged to edit it as you like. - -# Configure the console as our one appender -log4j.appender.A1=org.apache.log4j.ConsoleAppender -log4j.appender.A1.layout=org.apache.log4j.PatternLayout -log4j.appender.A1.layout.ConversionPattern=%d{HH:mm:ss,SSS} %-5p [%c] - %m%n - -# tighten logging on the DataNucleus Categories -log4j.category.DataNucleus.JDO=WARN, A1 -log4j.category.DataNucleus.Persistence=WARN, A1 -log4j.category.DataNucleus.Cache=WARN, A1 -log4j.category.DataNucleus.MetaData=WARN, A1 -log4j.category.DataNucleus.General=WARN, A1 -log4j.category.DataNucleus.Utility=WARN, A1 -log4j.category.DataNucleus.Transaction=WARN, A1 -log4j.category.DataNucleus.Datastore=WARN, A1 -log4j.category.DataNucleus.ClassLoading=WARN, A1 -log4j.category.DataNucleus.Plugin=WARN, A1 -log4j.category.DataNucleus.ValueGeneration=WARN, A1 -log4j.category.DataNucleus.Enhancer=WARN, A1 -log4j.category.DataNucleus.SchemaTool=WARN, A1