+++ /dev/null
-/*
- * Copyright (C) 2015 Roland Haeder
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-package org.mxchange.pizzaapplication.beans.controller;
-
-import java.util.Deque;
-import java.util.Iterator;
-import javax.faces.FacesException;
-import javax.servlet.ServletException;
-import javax.servlet.ServletRequest;
-import org.mxchange.jshop.beans.FrameworkBean;
-import org.mxchange.jshop.category.Category;
-import org.mxchange.jshop.exceptions.CategoryTitleAlreadyUsedException;
-import org.mxchange.jshop.exceptions.ProductTitleAlreadyUsedException;
-import org.mxchange.jshop.item.AddableBasketItem;
-import org.mxchange.jshop.product.Product;
-
-/**
- *
- * @author Roland Haeder
- */
-public interface PizzaBean extends FrameworkBean {
- /**
- * Initializes this instance
- *
- * @throws FacesException If something was wrong
- */
- public void init () throws FacesException;
-
- /**
- * Some "getter" for an iterator of only available products
- *
- * @return Only available products
- * @throws javax.servlet.ServletException If anything went wrong
- */
- public Iterator<Product> getAvailableProductsIterator () throws ServletException;
-
- /**
- * Some "getter" for an iterator of all products
- *
- * @return All products
- * @throws javax.servlet.ServletException If anything went wrong
- */
- public Iterator<Product> getAllProductsIterator () throws ServletException;
-
- /**
- * Some "getter" for an iterator of all categories
- *
- * @return All categories
- * @throws javax.servlet.ServletException If anything went wrong
- */
- public Iterator<Category> getAllCategoriesIterator () throws ServletException;
-
- /**
- * Some "getter" for a linked list of only available products
- *
- * @return Only available products
- * @throws javax.servlet.ServletException If anything went wrong
- */
- public Deque<Product> getAvailableProducts () throws ServletException;
-
- /**
- * Some "getter" for a linked list of all products
- *
- * @return All products
- * @throws javax.servlet.ServletException If anything went wrong
- */
- public Deque<Product> getAllProducts () throws ServletException;
-
- /**
- * Some "getter" for a linked list of all categories
- *
- * @return All categories
- * @throws javax.servlet.ServletException If anything went wrong
- */
- public Deque<Category> getAllCategories () throws ServletException;
-
- /**
- * Generates a link for category's parent category. If none is given, the method will return only a small
- * note.
- *
- * @param category Category instance
- * @return HTML link for category's parent category
- * @deprecated Old lost code
- */
- @Deprecated
- public String generateLinkForParent (final Category category);
-
- /**
- * Checks if given Product instance is available and returns a printable
- * (human-readable) string.
- *
- * @param product Product instance to check
- * @return Human-readable version of product availability
- * @deprecated Old lost code
- */
- @Deprecated
- public String getPrintableProduktAvailability (final Product product);
-
- /**
- * Returns a printable (human-readable) string of product's category
- *
- * @param product Product instance to check
- * @return Human-readable version of product availability
- * @throws javax.servlet.ServletException If something unexpected happened
- * @deprecated Old lost code
- */
- @Deprecated
- public String getPrintableProduktCategory (final Product product) throws ServletException;
-
- /**
- * Adds given category data from request to database
- *
- * @param request Request instance
- * @throws javax.servlet.ServletException If something unexpected happened
- * @throws org.mxchange.jshop.exceptions.CategoryTitleAlreadyUsedException If the given title is already used
- */
- public void doAdminAddCategory (final ServletRequest request) throws ServletException, CategoryTitleAlreadyUsedException;
-
- /**
- * Adds given product data from request to database
- *
- * @param request Request instance
- * @throws javax.servlet.ServletException If something unexpected happened
- * @throws org.mxchange.jshop.exceptions.ProductTitleAlreadyUsedException If the given product title is already used
- */
- public void doAdminAddProduct (final ServletRequest request) throws ServletException, ProductTitleAlreadyUsedException;
-
- /**
- * Handles admin product form requests
- *
- * @throws ServletException If something unexpected happened
- */
- public void doAdminHandleProductForms () throws ServletException;
-
- /**
- * Handles admin category form requests
- *
- * @throws ServletException If something unexpected happened
- */
- public void doAdminHandleCategoryForms () throws ServletException;
-
- /**
- * Some "getter" for a product from given item
- * @param item Item instance
- * @return A Product instance
- * @throws javax.servlet.ServletException If something bad happens
- */
- public Product getProduct (final AddableBasketItem item) throws ServletException;
-}
+++ /dev/null
-/*
- * Copyright (C) 2015 Roland Haeder
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-package org.mxchange.pizzaapplication.beans.controller;
-
-import java.io.IOException;
-import java.lang.reflect.InvocationTargetException;
-import java.sql.SQLException;
-import java.text.MessageFormat;
-import java.util.Deque;
-import java.util.Iterator;
-import javax.annotation.PostConstruct;
-import javax.enterprise.context.SessionScoped;
-import javax.faces.FacesException;
-import javax.inject.Named;
-import javax.servlet.ServletException;
-import javax.servlet.ServletRequest;
-import org.mxchange.jcore.exceptions.BadTokenException;
-import org.mxchange.jcore.exceptions.CorruptedDatabaseFileException;
-import org.mxchange.jcore.exceptions.UnsupportedDatabaseBackendException;
-import org.mxchange.jshop.beans.BaseFrameworkBean;
-import org.mxchange.jshop.category.Category;
-import org.mxchange.jshop.exceptions.CategoryTitleAlreadyUsedException;
-import org.mxchange.jshop.exceptions.ProductTitleAlreadyUsedException;
-import org.mxchange.jshop.item.AddableBasketItem;
-import org.mxchange.jshop.product.Product;
-import org.mxchange.pizzaapplication.application.PizzaApplication;
-import org.mxchange.pizzaapplication.application.PizzaServiceApplication;
-
-/**
- * Main application class
- *
- * @author Roland Haeder
- */
-@Named("controller")
-@SessionScoped
-public class PizzaServiceBean extends BaseFrameworkBean implements PizzaBean {
- /**
- * Serial id
- */
- private static final long serialVersionUID = 58137539530279L;
-
- /**
- * Pizza application
- */
- private final PizzaApplication app;
-
- /**
- * Initializer block
- */
- {
- // Get new application instance
- this.getLogger().debug("INITIALIZER!"); //NOI18N
- this.app = new PizzaServiceApplication();
- }
-
- /**
- * Default constructor
- */
- public PizzaServiceBean () {
- this.getLogger().trace("CALLED!"); //NOI18N
- }
-
- @Override
- @PostConstruct
- public void init () throws FacesException {
- // Trace message
- this.getLogger().trace(MessageFormat.format("application={0} - CALLED!", this.getApplication())); //NOI18N
-
- // Must not be null
- if (this.getApplication() == null) {
- // Abort here
- throw new NullPointerException("application is null"); //NOI18N
- }
-
- try {
- // Call init method
- this.app.init(this.getApplication());
- } catch (final UnsupportedDatabaseBackendException | SQLException | IOException | BadTokenException ex) {
- // Continue to throw
- throw new FacesException(ex);
- }
- }
-
- @Override
- @Deprecated
- public String getPrintableProduktAvailability (final Product product) {
- return this.app.getPrintableProduktAvailability(product);
- }
-
- @Override
- public Iterator<Product> getAvailableProductsIterator () throws ServletException {
- try {
- return this.app.getAvailableProductsIterator();
- } catch (final IOException | BadTokenException | SQLException | CorruptedDatabaseFileException | NoSuchMethodException | IllegalAccessException | InvocationTargetException ex) {
- // Continue to throw
- throw new ServletException(ex);
- }
- }
-
- @Override
- public Iterator<Product> getAllProductsIterator () throws ServletException {
- try {
- return this.app.getAllProductsIterator();
- } catch (final IOException | BadTokenException | SQLException | CorruptedDatabaseFileException | NoSuchMethodException | IllegalAccessException | InvocationTargetException ex) {
- // Continue to throw
- throw new ServletException(ex);
- }
- }
-
- @Override
- public Deque<Product> getAvailableProducts () throws ServletException {
- try {
- return this.app.getAvailableProducts();
- } catch (final IOException | BadTokenException | SQLException | CorruptedDatabaseFileException | NoSuchMethodException | IllegalAccessException | InvocationTargetException ex) {
- // Continue to throw
- throw new ServletException(ex);
- }
- }
-
- @Override
- public Deque<Product> getAllProducts () throws ServletException {
- try {
- return this.app.getAllProducts();
- } catch (final IOException | BadTokenException | SQLException | CorruptedDatabaseFileException | NoSuchMethodException | IllegalAccessException | InvocationTargetException ex) {
- // Continue to throw
- throw new ServletException(ex);
- }
- }
-
- @Override
- public Iterator<Category> getAllCategoriesIterator () throws ServletException {
- try {
- return this.app.getAllCategoriesIterator();
- } catch (final IOException | BadTokenException | SQLException | CorruptedDatabaseFileException | NoSuchMethodException | IllegalAccessException | InvocationTargetException ex) {
- // Continue to throw
- throw new ServletException(ex);
- }
- }
-
- @Override
- public Deque<Category> getAllCategories () throws ServletException {
- try {
- return this.app.getAllCategories();
- } catch (final IOException | BadTokenException | SQLException | CorruptedDatabaseFileException | NoSuchMethodException | IllegalAccessException | InvocationTargetException ex) {
- // Continue to throw
- throw new ServletException(ex);
- }
- }
-
- @Override
- public void doAdminAddCategory (final ServletRequest request) throws ServletException, CategoryTitleAlreadyUsedException {
- try {
- this.app.doAdminAddCategory(request);
- } catch (final IOException | BadTokenException | SQLException | CorruptedDatabaseFileException | NoSuchMethodException | IllegalAccessException | InvocationTargetException ex) {
- // Continue to throw
- throw new ServletException(ex);
- }
- }
-
- @Override
- public void doAdminAddProduct (final ServletRequest request) throws ServletException, ProductTitleAlreadyUsedException {
- try {
- this.app.doAdminAddProduct(request);
- } catch (final IOException | BadTokenException | SQLException | CorruptedDatabaseFileException | NoSuchMethodException | IllegalAccessException | InvocationTargetException ex) {
- // Continue to throw
- throw new ServletException(ex);
- }
- }
-
- @Override
- @Deprecated
- public String getPrintableProduktCategory (final Product product) throws ServletException {
- try {
- return this.app.getPrintableProductCategory(product);
- } catch (final IOException | BadTokenException | SQLException | CorruptedDatabaseFileException | NoSuchMethodException | IllegalAccessException | InvocationTargetException ex) {
- // Continue to throw
- throw new ServletException(ex);
- }
- }
-
- @Override
- public void doAdminHandleProductForms () throws ServletException {
- try {
- this.app.doAdminHandleProductForms(this.getRequest(), this.getResponse());
- } catch (final IOException | BadTokenException | SQLException | CorruptedDatabaseFileException | NoSuchMethodException | IllegalAccessException | InvocationTargetException | ProductTitleAlreadyUsedException ex) {
- // Continue to throw
- throw new ServletException(ex);
- }
- }
-
- @Override
- public void doAdminHandleCategoryForms () throws ServletException {
- try {
- this.app.doAdminHandleCategoryForms(this.getRequest(), this.getResponse());
- } catch (final IOException | BadTokenException | SQLException | CorruptedDatabaseFileException | NoSuchMethodException | IllegalAccessException | InvocationTargetException | CategoryTitleAlreadyUsedException ex) {
- // Continue to throw
- throw new ServletException(ex);
- }
- }
-
- @Override
- public Product getProduct (final AddableBasketItem item) throws ServletException {
- try {
- // Deligate to application
- return this.app.getProduct(item);
- } catch (IOException | BadTokenException | SQLException | CorruptedDatabaseFileException | NoSuchMethodException | IllegalAccessException | InvocationTargetException ex) {
- // Continue to throw
- throw new ServletException(ex);
- }
- }
-
- @Override
- @Deprecated
- public String generateLinkForParent (final Category category) {
- // Deligate to app
- return this.app.generateLinkForParent(category);
- }
-}
+++ /dev/null
-/*
- * Copyright (C) 2015 Roland Haeder
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-package org.mxchange.pizzaapplication.beans.customer;
-
-import java.lang.reflect.Field;
-import java.util.Iterator;
-import java.util.Map;
-import javax.servlet.ServletException;
-import org.mxchange.jcore.client.Client;
-import org.mxchange.jcore.contact.Gender;
-import org.mxchange.jshop.beans.FrameworkBean;
-
-/**
- * An interface for customer beans
- *
- * @author Roland Haeder
- */
-public interface CustomerBean extends FrameworkBean {
- /**
- * Returns an iterator of all values from this object
- *
- * @return An iterator
- * @throws javax.servlet.ServletException If something bad happens
- */
- public Iterator<Map.Entry<Field, Object>> iterator ()throws ServletException;
-
- /**
- * Some "getter" for translated gender of the contact
- *
- * @return Translated / human-readable gender
- */
- public String getTranslatedGender ();
-
- /**
- * Gender of the contact
- *
- * @return the gender
- */
- public Gender getGender ();
-
- /**
- * Gender of the contact
- *
- * @param gender the gender to set
- */
- public void setGender (final Gender gender);
-
- /**
- * First name
- *
- * @return the first name
- */
- public String getFirstName ();
-
- /**
- * First name
- *
- * @param firstName the first name to set
- */
- public void setFirstName (final String firstName);
-
- /**
- * Family name
- *
- * @return the familyName
- */
- public String getFamilyName ();
-
- /**
- * Family name
- *
- * @param familyName the familyName to set
- */
- public void setFamilyName (final String familyName);
-
- /**
- * Companyname
- *
- * @return the companyName
- */
- public String getCompanyName ();
-
- /**
- * Companyname
- *
- * @param companyName the companyName to set
- */
- public void setCompanyName (final String companyName);
-
- /**
- * Street
- *
- * @return the street
- */
- public String getStreet ();
-
- /**
- * Street
- *
- * @param street the street to set
- */
- public void setStreet (final String street);
-
- /**
- * House number
- *
- * @return the houseNumber
- */
- public Long getHouseNumber ();
-
- /**
- * House number
- *
- * @param houseNumber the houseNumber to set
- */
- public void setHouseNumber (final Long houseNumber);
-
- /**
- * ZIP code
- *
- * @return the zipCode
- */
- public Long getZipCode ();
-
- /**
- * ZIP code
- *
- * @param zipCode the zipCode to set
- */
- public void setZipCode (final Long zipCode);
-
- /**
- * City
- *
- * @return the city
- */
- public String getCity ();
-
- /**
- * City
- *
- * @param city the city to set
- */
- public void setCity (final String city);
-
- /**
- * Country code
- *
- * @return the countryCode
- */
- public String getCountryCode ();
-
- /**
- * Country code
- *
- * @param countryCode the countryCode to set
- */
- public void setCountryCode (final String countryCode);
-
- /**
- * Email address
- *
- * @return the emailAddress
- */
- public String getEmailAddress ();
-
- /**
- * Email address
- *
- * @param emailAddress the emailAddress to set
- */
- public void setEmailAddress (final String emailAddress);
-
- /**
- * Phone number
- *
- * @return the phoneNumber
- */
- public String getPhoneNumber ();
-
- /**
- * Phone number
- *
- * @param phoneNumber the phoneNumber to set
- */
- public void setPhoneNumber (final String phoneNumber);
-
- /**
- * Fax number
- *
- * @return the faxNumber
- */
- public String getFaxNumber ();
-
- /**
- * Fax number
- *
- * @param faxNumber the faxNumber to set
- */
- public void setFaxNumber (final String faxNumber);
-
- /**
- * Cellphone number
- *
- * @return the cellphoneNumber
- */
- public String getCellphoneNumber ();
-
- /**
- * Cellphone number
- *
- * @param cellphoneNumber the cellphoneNumber to set
- */
- public void setCellphoneNumber (final String cellphoneNumber);
-
- /**
- * Birth day
- *
- * @return the birthday
- */
- public String getBirthday ();
-
- /**
- * Birth day
- *
- * @param birthday the birthday to set
- */
- public void setBirthday (final String birthday);
-
- /**
- * Comments
- *
- * @return the comment
- */
- public String getComment ();
-
- /**
- * Comments
- *
- * @param comment the comment to set
- */
- public void setComment (final String comment);
-
- /**
- * Checks whether the contact is user's own data
- *
- * @return Own data?
- */
- public boolean isOwnContact ();
-
- /**
- * Shows the contact to the user
- *
- * @param client Client instance to call back
- */
- public void show (final Client client);
-
- /**
- * Some "getter for a value from given column name. This name will be
- * translated into a method name and then this method is called.
- *
- * @param columnName Column name
- * @return Value from field
- * @throws IllegalArgumentException Some implementations may throw this
- * @throws javax.servlet.ServletException If something bad happens
- */
- public Object getValueFromColumn (final String columnName) throws ServletException;
-
- /**
- * Some "setter" for a value from given column name. You may wish to overwrite this method in your
- * own class.
- *
- * @param columnName Column name
- * @param value Value to set in object's field
- * @throws IllegalArgumentException Some implementations may throw this
- * @throws javax.servlet.ServletException If something bad happens
- */
- public void setValueFromColumn (final String columnName, final Object value) throws ServletException;
-}
+++ /dev/null
-/*
- * Copyright (C) 2015 Roland Haeder
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-package org.mxchange.pizzaapplication.beans.customer;
-
-import java.lang.reflect.Field;
-import java.lang.reflect.InvocationTargetException;
-import java.util.Iterator;
-import java.util.Map;
-import javax.enterprise.context.SessionScoped;
-import javax.inject.Named;
-import javax.servlet.ServletException;
-import org.mxchange.jcore.client.Client;
-import org.mxchange.jcore.contact.Contact;
-import org.mxchange.jcore.contact.Gender;
-import org.mxchange.jshop.beans.BaseFrameworkBean;
-import org.mxchange.pizzaapplication.customer.PizzaServiceCustomer;
-
-/**
- * A customer bean which hides the customer instance
- *
- * @author Roland Haeder
- */
-@Named("customer")
-@SessionScoped
-public class PizzaServiceCustomerBean extends BaseFrameworkBean implements CustomerBean {
- /**
- * Serial number
- */
- private static final long serialVersionUID = 542145347916L;
-
- /**
- * Contact instance
- */
- private Contact contact;
-
- /**
- * Default constructor
- */
- public PizzaServiceCustomerBean () {
- // Instance customer
- Contact customer = new PizzaServiceCustomer();
-
- // And set it here
- this.setContact(customer);
- }
-
- @Override
- public String getBirthday () {
- // Deligate to "hidden" object
- return this.getContact().getBirthday();
- }
-
- @Override
- public void setBirthday (final String birthday) {
- // Deligate to "hidden" object
- this.getContact().setBirthday(birthday);
- }
-
- @Override
- public String getCellphoneNumber () {
- // Deligate to "hidden" object
- return this.getContact().getCellphoneNumber();
- }
-
- @Override
- public void setCellphoneNumber (final String cellphoneNumber) {
- // Deligate to "hidden" object
- this.getContact().setCellphoneNumber(cellphoneNumber);
- }
-
- @Override
- public String getCity () {
- // Deligate to "hidden" object
- return this.getContact().getCity();
- }
-
- @Override
- public void setCity (final String city) {
- // Deligate to "hidden" object
- this.getContact().setCity(city);
- }
-
- @Override
- public String getComment () {
- // Deligate to "hidden" object
- return this.getContact().getComment();
- }
-
- @Override
- public void setComment (final String comment) {
- // Deligate to "hidden" object
- this.getContact().setComment(comment);
- }
-
- @Override
- public String getCompanyName () {
- // Deligate to "hidden" object
- return this.getContact().getCompanyName();
- }
-
- @Override
- public void setCompanyName (final String companyName) {
- // Deligate to "hidden" object
- this.getContact().setCompanyName(companyName);
- }
-
- @Override
- public String getCountryCode () {
- // Deligate to "hidden" object
- return this.getContact().getCountryCode();
- }
-
- @Override
- public void setCountryCode (final String countryCode) {
- // Deligate to "hidden" object
- this.getContact().setCountryCode(countryCode);
- }
-
- @Override
- public String getEmailAddress () {
- // Deligate to "hidden" object
- return this.getContact().getEmailAddress();
- }
-
- @Override
- public void setEmailAddress (final String emailAddress) {
- // Deligate to "hidden" object
- this.getContact().setEmailAddress(emailAddress);
- }
-
- @Override
- public String getFamilyName () {
- // Trace call
- //* NOISY-DEBUG: */ this.getLogger().trace("CALLED!");
-
- // Deligate to "hidden" object
- return this.getContact().getFamilyName();
- }
-
- @Override
- public void setFamilyName (final String familyName) {
- // Trace call
- //* NOISY-DEBUG: */ this.getLogger().trace(MessageFormat.format("familyName={0} - CALLED!", familyName));
-
- // Deligate to "hidden" object
- this.getContact().setFamilyName(familyName);
- }
-
- @Override
- public String getFaxNumber () {
- // Deligate to "hidden" object
- return this.getContact().getFaxNumber();
- }
-
- @Override
- public void setFaxNumber (final String faxNumber) {
- // Deligate to "hidden" object
- this.getContact().setFaxNumber(faxNumber);
- }
-
- @Override
- public Gender getGender () {
- // Deligate to "hidden" object
- return this.getContact().getGender();
- }
-
- @Override
- public void setGender (final Gender gender) {
- // Deligate to "hidden" object
- this.getContact().setGender(gender);
- }
-
- @Override
- public Long getHouseNumber () {
- // Deligate to "hidden" object
- return this.getContact().getHouseNumber();
- }
-
- @Override
- public void setHouseNumber (final Long houseNumber) {
- // Deligate to "hidden" object
- this.getContact().setHouseNumber(houseNumber);
- }
-
- @Override
- public String getPhoneNumber () {
- // Deligate to "hidden" object
- return this.getContact().getPhoneNumber();
- }
-
- @Override
- public void setPhoneNumber (final String phoneNumber) {
- // Deligate to "hidden" object
- this.getContact().setPhoneNumber(phoneNumber);
- }
-
- @Override
- public String getStreet () {
- // Deligate to "hidden" object
- return this.getContact().getStreet();
- }
-
- @Override
- public void setStreet (final String street) {
- // Deligate to "hidden" object
- this.getContact().setStreet(street);
- }
-
- @Override
- public String getFirstName () {
- // Deligate to "hidden" object
- return this.getContact().getFirstName();
- }
-
- @Override
- public void setFirstName (final String firstName) {
- // Deligate to "hidden" object
- this.getContact().setFirstName(firstName);
- }
-
- @Override
- public String getTranslatedGender () {
- // Deligate to "hidden" object
- return this.getContact().getTranslatedGender();
- }
-
- @Override
- public Long getZipCode () {
- // Deligate to "hidden" object
- return this.getContact().getZipCode();
- }
-
- @Override
- public void setZipCode (final Long zipCode) {
- // Deligate to "hidden" object
- this.getContact().setZipCode(zipCode);
- }
-
- @Override
- public boolean isOwnContact () {
- throw new UnsupportedOperationException("Not supported yet."); //NOI18N
- }
-
- @Override
- public Iterator<Map.Entry<Field, Object>> iterator () throws ServletException {
- try {
- // Deligate to "hidden" object
- return this.getContact().iterator();
- } catch (final NoSuchMethodException | IllegalAccessException | InvocationTargetException ex) {
- // Continue to throw
- throw new ServletException(ex);
- }
- }
-
- @Override
- public void show (final Client client) {
- throw new UnsupportedOperationException("Not supported yet."); //NOI18N
- }
-
- @Override
- public Object getValueFromColumn (final String columnName) throws ServletException {
- try {
- // Deligate to "hidden" object
- return this.getContact().getValueFromColumn(columnName);
- } catch (final IllegalArgumentException | NoSuchMethodException | IllegalAccessException | InvocationTargetException ex) {
- // Continue to throw
- throw new ServletException(ex);
- }
- }
-
- @Override
- public void setValueFromColumn (final String columnName, final Object value) throws ServletException {
- try {
- // Deligate to "hidden" object
- this.getContact().setValueFromColumn(columnName, value);
- } catch (final NoSuchMethodException | IllegalAccessException | IllegalArgumentException | InvocationTargetException ex) {
- // Continue to throw
- throw new ServletException(ex);
- }
- }
-
- /**
- * Setter for Contact instance
- * @param contact Contact instance to set
- */
- private void setContact (final Contact contact) {
- this.contact = contact;
- }
-
- /**
- * Getter for Contact instance
- * @return Contact instance
- */
- private Contact getContact () {
- return this.contact;
- }
-}
+++ /dev/null
-/*
- * Copyright (C) 2015 quix0r
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-package org.mxchange.pizzaapplication.tags.basket;
-
-import javax.servlet.jsp.tagext.BodyTag;
-import org.mxchange.jshop.beans.basket.BasketBean;
-
-/**
- *
- * @author quix0r
- */
-public interface BasketTag extends BodyTag {
-
- /**
- * @return the basket
- */
- public BasketBean getBasket ();
-
- /**
- * @param basket the basket to set
- */
- public void setBasket (final BasketBean basket);
-}
+++ /dev/null
-/*
- * Copyright (C) 2015 Roland Haeder
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-package org.mxchange.pizzaapplication.tags.basket;
-
-import java.io.IOException;
-import java.text.MessageFormat;
-import javax.servlet.ServletException;
-import javax.servlet.jsp.JspException;
-import javax.servlet.jsp.tagext.BodyTagSupport;
-import org.apache.logging.log4j.LogManager;
-import org.apache.logging.log4j.Logger;
-import org.mxchange.jshop.beans.basket.BasketBean;
-import org.mxchange.jshop.item.AddableBasketItem;
-import org.mxchange.jshop.product.Product;
-import org.mxchange.pizzaapplication.beans.controller.PizzaBean;
-
-/**
- * A basket tag that outputs a small basket and a link to the full basket website.
- *
- * @author Roland Haeder
- */
-public class MiniBasketTag extends BodyTagSupport implements BasketTag {
- /**
- * Serial number
- */
- private static final long serialVersionUID = 457415727452384L;
-
- /**
- * Basket instance
- */
- private BasketBean basket;
-
- /**
- * Logger instance
- */
- private final Logger LOG;
-
- /**
- * Initializer
- */
- {
- this.LOG = LogManager.getLogger(this);
- }
-
- /**
- * Outputs a div container with last added item + a link to the basket
- * web page.
- *
- * @return No need to process the body
- * @throws JspException If anything happens
- */
- @Override
- public int doStartTag () throws JspException {
- // Trace message
- this.LOG.trace("CALLED!"); //NOI18N
-
- // Init output
- StringBuilder out = new StringBuilder("<div class=\"mini_basket\">\n"); //NOI18N
-
- // basket should not be null
- if (this.getBasket() == null) {
- // Not set
- throw new NullPointerException("basket instance is null"); //NOI18N
- }
-
- try {
- // Some entries found?
- if (this.getBasket().isEmpty()) {
- // Empty basket
- out.append("<div class=\"mini_basket_box\">\n"); //NOI18N
- out.append(this.getBasket().getMessageStringFromKey("MiniBasketTag.basket_is_empty")).append("\n"); //NOI18N
- out.append("</div>\n"); //NOI18N
- } else {
- // Get all items
- AddableBasketItem item = this.getBasket().getLast();
-
- // item cannot be null here
- if (null == item) {
- // Abort here
- throw new NullPointerException("item is null"); //NOI18N
- }
-
- // Get application bean from session
- PizzaBean bean = (PizzaBean) this.getBasket().getSession().getAttribute("controller"); //NOI18N
-
- // Debug log
- this.LOG.debug(MessageFormat.format("bean={0}", bean)); //NOI18N
-
- // Should not be null
- if (null == bean) {
- // Abort here
- throw new NullPointerException("bean is null"); //NOI18N
- }
-
- // Get product instance
- Product product = bean.getProduct(item);
-
- // Debug message
- this.LOG.debug(MessageFormat.format("product={0}", product)); //NOI18N
-
- // Get last num rows
- int lastNumRows = this.getBasket().getLastNumRows();
-
- // Debug message
- this.LOG.debug(MessageFormat.format("lastNumRows={0}", lastNumRows)); //NOI18N
-
- // Output all
- out.append("<div class=\"mini_basket_box\">\n"); //NOI18N
- out.append(" <div class=\"mini_basket_header\">\n"); //NOI18N
- out.append(" ").append(this.getBasket().getMessageStringFromKey("MiniBasketTag.header")).append("\n"); //NOI18N
- out.append(" </div>\n"); //NOI18N
- out.append(" <div class=\"mini_basket_last\">\n"); //NOI18N
- out.append(" ").append(MessageFormat.format(this.getBasket().getMessageStringFromKey("MiniBasketTag.last_item"), product.getTitle())); //NOI18N
- out.append(" </div>\n"); //NOI18N
- out.append(" <div class=\"mini_basket_more\">\n"); //NOI18N
- out.append(" ").append(MessageFormat.format(this.getBasket().getMessageStringFromKey("MiniBasketTag.additional_items"), (lastNumRows - 1))); //NOI18N
- out.append(" </div>\n"); //NOI18N
- out.append(" <div class=\"mini_basket_link\">\n"); //NOI18N
- out.append(" <a href=\"").append(this.getBasket().getApplication().getContextPath()).append("/basket.jsp\">").append(this.getBasket().getMessageStringFromKey("MiniBasketTag.to_basket")).append("</a>\n"); //NOI18N
- out.append(" </div>\n"); //NOI18N
- out.append("</div>\n"); //NOI18N
- }
- } catch (final ServletException ex) {
- // Continue to throw
- throw new JspException(ex);
- }
-
- try {
- // Get output instance and write it
- this.pageContext.getOut().print(out.toString());
- } catch (final IOException ex) {
- // Continue to throw
- throw new JspException(ex);
- }
-
- // Trace message
- this.LOG.trace(MessageFormat.format("Returning {0} ... - EXIT!", SKIP_BODY)); //NOI18N
-
- // Don't process any body
- return SKIP_BODY;
- }
-
- /**
- * @return the basket
- */
- @Override
- public BasketBean getBasket () {
- // Trace message
- //* NOISY-DEBUG: */ this.LOG.trace("basket=" + this.basket + " - EXIT!");
-
- // Return it
- return this.basket;
- }
-
- /**
- * @param basket the basket to set
- */
- @Override
- public void setBasket (final BasketBean basket) {
- // Trace message
- //* NOISY-DEBUG: */ this.LOG.trace("basked=" + basket + " - CALLED!");
-
- // Set it here
- this.basket = basket;
- }
-}