Java tutorial
/* * Copyright 2007-2010 JadaSite. * This file is part of JadaSite. * JadaSite 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. * JadaSite 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 JadaSite. If not, see <http://www.gnu.org/licenses/>. */ package com.jada.admin.site; import java.util.Date; import java.util.Iterator; import java.util.Set; import java.util.Vector; import org.apache.commons.beanutils.PropertyUtils; import javax.persistence.Query; import javax.persistence.EntityManager; import com.jada.dao.CountryDAO; import com.jada.dao.StateDAO; import com.jada.jpa.connection.JpaConnection; import com.jada.jpa.entity.Category; import com.jada.jpa.entity.CategoryLanguage; import com.jada.jpa.entity.Country; import com.jada.jpa.entity.CreditCard; import com.jada.jpa.entity.Currency; import com.jada.jpa.entity.CustomAttribute; import com.jada.jpa.entity.CustomAttributeLanguage; import com.jada.jpa.entity.HomePage; import com.jada.jpa.entity.HomePageDetail; import com.jada.jpa.entity.HomePageLanguage; import com.jada.jpa.entity.IeProfileDetail; import com.jada.jpa.entity.IeProfileHeader; import com.jada.jpa.entity.Menu; import com.jada.jpa.entity.MenuLanguage; import com.jada.jpa.entity.Report; import com.jada.jpa.entity.ShippingMethod; import com.jada.jpa.entity.ShippingMethodLanguage; import com.jada.jpa.entity.ShippingMethodRegion; import com.jada.jpa.entity.ShippingMethodRegionType; import com.jada.jpa.entity.ShippingRate; import com.jada.jpa.entity.ShippingRegion; import com.jada.jpa.entity.ShippingType; import com.jada.jpa.entity.Site; import com.jada.jpa.entity.SiteCurrency; import com.jada.jpa.entity.SiteCurrencyClass; import com.jada.jpa.entity.SiteDomain; import com.jada.jpa.entity.SiteDomainLanguage; import com.jada.jpa.entity.SiteProfile; import com.jada.jpa.entity.SiteProfileClass; import com.jada.jpa.entity.State; import com.jada.jpa.entity.Tax; import com.jada.jpa.entity.Template; import com.jada.util.Constants; public class SiteLoader { /* * Used to load up tables when a new site is initially created. * Tables to be loaded. * Country * State * Currency * Menu * Category * Tax * Template * ShippingRegion * CreditCard */ Site site = null; String userId = null; public SiteLoader(Site site, String userId) { this.site = site; this.userId = userId; } public void load() throws Exception { loadCountry(); loadState(); loadCurrency(); loadTax(); loadTemplate(); loadShippingType(); loadShippingRegion(); loadShippingMethod(); loadCreditCard(); } public void remove() throws Exception { EntityManager em = JpaConnection.getInstance().getCurrentEntityManager(); String sql = null; Query query = null; Iterator<?> iterator = null; sql = "delete from CreditCard where siteId = :siteId"; query = em.createQuery(sql); query.setParameter("siteId", site.getSiteId()); query.executeUpdate(); sql = "from Report report where report.site.siteId = :siteId"; query = em.createQuery(sql); query.setParameter("siteId", site.getSiteId()); iterator = query.getResultList().iterator(); while (iterator.hasNext()) { Report report = (Report) iterator.next(); em.remove(report); } sql = "from IeProfileHeader ieProfileHeader where ieProfileHeader.site.siteId = :siteId"; query = em.createQuery(sql); query.setParameter("siteId", site.getSiteId()); iterator = query.getResultList().iterator(); while (iterator.hasNext()) { IeProfileHeader ieProfileHeader = (IeProfileHeader) iterator.next(); for (IeProfileDetail ieProfileDetail : ieProfileHeader.getIeProfileDetails()) { em.remove(ieProfileDetail); } em.remove(ieProfileHeader); } sql = "from Menu menu where menu.siteDomain in (select siteDomain from SiteDomain siteDomain where siteDomain.site.siteId = :siteId)"; query = em.createQuery(sql); query.setParameter("siteId", site.getSiteId()); iterator = query.getResultList().iterator(); while (iterator.hasNext()) { Menu menu = (Menu) iterator.next(); menu.setMenuLanguage(null); for (MenuLanguage menuLanguage : menu.getMenuLanguages()) { em.remove(menuLanguage); } em.remove(menu); } sql = "from Category category where category.site.siteId = :siteId)"; query = em.createQuery(sql); query.setParameter("siteId", site.getSiteId()); iterator = query.getResultList().iterator(); while (iterator.hasNext()) { Category category = (Category) iterator.next(); category.setCategoryLanguage(null); for (CategoryLanguage categoryLanguage : category.getCategoryLanguages()) { em.remove(categoryLanguage); } em.remove(category); } sql = "delete from ProductClass productClass where productClass.site.siteId = :siteId)"; query = em.createQuery(sql); query.setParameter("siteId", site.getSiteId()); query.executeUpdate(); sql = "delete from CustomerClass customerClass where customerClass.site.siteId = :siteId)"; query = em.createQuery(sql); query.setParameter("siteId", site.getSiteId()); query.executeUpdate(); sql = "from ShippingRate shippingRate " + "where shippingRate in ( " + "select shippingRate " + "from ShippingMethodRegionType shippingMethodRegionType " + "where shippingMethodRegionType.shippingMethod.site.siteId = :siteId " + ")"; query = em.createQuery(sql); query.setParameter("siteId", site.getSiteId()); iterator = query.getResultList().iterator(); while (iterator.hasNext()) { ShippingRate shippingRate = (ShippingRate) iterator.next(); em.remove(shippingRate); } sql = "from ShippingMethod where siteId = :siteId"; query = em.createQuery(sql); query.setParameter("siteId", site.getSiteId()); iterator = query.getResultList().iterator(); while (iterator.hasNext()) { ShippingMethod shippingMethod = (ShippingMethod) iterator.next(); em.remove(shippingMethod.getShippingMethodLanguage()); em.remove(shippingMethod); } sql = "from ShippingRegion where siteId = :siteId"; query = em.createQuery(sql); query.setParameter("siteId", site.getSiteId()); iterator = query.getResultList().iterator(); while (iterator.hasNext()) { ShippingRegion shippingRegion = (ShippingRegion) iterator.next(); em.remove(shippingRegion); } sql = "from ShippingType where siteId = :siteId"; query = em.createQuery(sql); query.setParameter("siteId", site.getSiteId()); iterator = query.getResultList().iterator(); while (iterator.hasNext()) { ShippingType shippingType = (ShippingType) iterator.next(); em.remove(shippingType); } sql = "from State where stateId in (select stateId from State state where state.country.site.siteId = :siteId)"; query = em.createQuery(sql); query.setParameter("siteId", site.getSiteId()); iterator = query.getResultList().iterator(); while (iterator.hasNext()) { State state = (State) iterator.next(); state.setCountry(null); em.remove(state); } sql = "from Country where siteId = :siteId"; query = em.createQuery(sql); query.setParameter("siteId", site.getSiteId()); iterator = query.getResultList().iterator(); while (iterator.hasNext()) { Country country = (Country) iterator.next(); em.remove(country); } site.setSiteCurrencyClassDefault(null); site.setSiteProfileClassDefault(null); for (SiteDomain siteDomain : site.getSiteDomains()) { siteDomain.setSiteProfileDefault(null); siteDomain.setSiteCurrencyDefault(null); siteDomain.setBaseCurrency(null); siteDomain.setSiteDomainLanguage(null); HomePage homePage = siteDomain.getHomePage(); for (HomePageDetail homePageDetail : homePage.getHomePageDetails()) { em.remove(homePageDetail); } for (HomePageLanguage homePageLanguage : homePage.getHomePageLanguages()) { em.remove(homePageLanguage); } em.remove(homePage); siteDomain.setHomePage(null); Template template = siteDomain.getTemplate(); em.remove(template); siteDomain.setTemplate(null); } sql = "from SiteProfile siteProfile where siteProfile.siteDomain.site.siteId = :siteId"; query = em.createQuery(sql); query.setParameter("siteId", site.getSiteId()); iterator = query.getResultList().iterator(); while (iterator.hasNext()) { SiteProfile siteProfile = (SiteProfile) iterator.next(); em.remove(siteProfile); } sql = "from SiteCurrency siteCurrency where siteCurrency.siteDomain.site.siteId = :siteId"; query = em.createQuery(sql); query.setParameter("siteId", site.getSiteId()); iterator = query.getResultList().iterator(); while (iterator.hasNext()) { SiteCurrency siteCurrency = (SiteCurrency) iterator.next(); em.remove(siteCurrency); } sql = "from SiteProfileClass siteProfileClass where siteProfileClass.site.siteId = :siteId"; query = em.createQuery(sql); query.setParameter("siteId", site.getSiteId()); iterator = query.getResultList().iterator(); while (iterator.hasNext()) { SiteProfileClass siteProfileClass = (SiteProfileClass) iterator.next(); em.remove(siteProfileClass); } sql = "from SiteCurrencyClass siteCurrencyClass where siteCurrencyClass.site.siteId = :siteId"; query = em.createQuery(sql); query.setParameter("siteId", site.getSiteId()); iterator = query.getResultList().iterator(); while (iterator.hasNext()) { SiteCurrencyClass siteCurrencyClass = (SiteCurrencyClass) iterator.next(); siteCurrencyClass.setCurrency(null); em.remove(siteCurrencyClass); } sql = "from Currency currency where currency.site.siteId = :siteId"; query = em.createQuery(sql); query.setParameter("siteId", site.getSiteId()); iterator = query.getResultList().iterator(); while (iterator.hasNext()) { Currency currency = (Currency) iterator.next(); em.remove(currency); } sql = "from CustomAttribute customAttribute where customAttribute.site.siteId = :siteId"; query = em.createQuery(sql); query.setParameter("siteId", site.getSiteId()); iterator = query.getResultList().iterator(); while (iterator.hasNext()) { CustomAttribute customAttribute = (CustomAttribute) iterator.next(); em.remove(customAttribute); CustomAttributeLanguage customAttributeLanguage = customAttribute.getCustomAttributeLanguage(); customAttributeLanguage.setCustomAttribute(null); em.remove(customAttributeLanguage); } sql = "from SiteDomain siteDomain where siteDomain.site.siteId = :siteId"; query = em.createQuery(sql); query.setParameter("siteId", site.getSiteId()); iterator = query.getResultList().iterator(); while (iterator.hasNext()) { SiteDomain siteDomain = (SiteDomain) iterator.next(); for (SiteDomainLanguage siteDomainLanguage : siteDomain.getSiteDomainLanguages()) { em.remove(siteDomainLanguage); } em.remove(siteDomain); } } public void loadCountry() throws Exception { EntityManager em = JpaConnection.getInstance().getCurrentEntityManager(); String sql = "from Country country where siteId = :siteId order by countryCode"; Query query = em.createQuery(sql); query.setParameter("siteId", Constants.SITE_SYSTEM); Iterator<?> iterator = query.getResultList().iterator(); while (iterator.hasNext()) { Country master = (Country) iterator.next(); Country country = new Country(); PropertyUtils.copyProperties(country, master); country.setSite(site); country.setCountryId(null); country.setRecUpdateBy(userId); country.setRecUpdateDatetime(new Date(System.currentTimeMillis())); country.setRecCreateBy(userId); country.setRecCreateDatetime(new Date(System.currentTimeMillis())); country.setShippingRegion(null); country.setStates(null); country.setTaxes(null); em.persist(country); } } public void loadState() throws Exception { EntityManager em = JpaConnection.getInstance().getCurrentEntityManager(); String sql = "from State state where state.country.site.siteId = :siteId order by stateCode"; Query query = em.createQuery(sql); query.setParameter("siteId", Constants.SITE_SYSTEM); Iterator<?> iterator = query.getResultList().iterator(); while (iterator.hasNext()) { State master = (State) iterator.next(); State state = new State(); PropertyUtils.copyProperties(state, master); state.setStateId(null); state.setRecUpdateBy(userId); state.setRecUpdateDatetime(new Date(System.currentTimeMillis())); state.setRecCreateBy(userId); state.setRecCreateDatetime(new Date(System.currentTimeMillis())); state.setShippingRegion(null); Country mc = master.getCountry(); Country country = null; if (mc != null) { country = CountryDAO.loadByCountryName(site.getSiteId(), mc.getCountryName()); } state.setCountry(country); state.setTaxes(null); em.persist(state); } } public void loadCurrency() throws Exception { EntityManager em = JpaConnection.getInstance().getCurrentEntityManager(); String sql = "from Currency where siteId = :siteId order by currencyCode"; Query query = em.createQuery(sql); query.setParameter("siteId", Constants.SITE_SYSTEM); Iterator<?> iterator = query.getResultList().iterator(); while (iterator.hasNext()) { Currency master = (Currency) iterator.next(); Currency currency = new Currency(); PropertyUtils.copyProperties(currency, master); currency.setSite(site); currency.setCurrencyId(null); currency.setRecUpdateBy(userId); currency.setRecUpdateDatetime(new Date(System.currentTimeMillis())); currency.setRecCreateBy(userId); currency.setRecCreateDatetime(new Date(System.currentTimeMillis())); em.persist(currency); } } public void loadMenu() throws Exception { EntityManager em = JpaConnection.getInstance().getCurrentEntityManager(); String sql = "from Menu where siteId = :siteId order by menuSetName"; Query query = em.createQuery(sql); query.setParameter("siteId", Constants.SITE_SYSTEM); Iterator<?> iterator = query.getResultList().iterator(); while (iterator.hasNext()) { Menu master = (Menu) iterator.next(); Menu menu = new Menu(); PropertyUtils.copyProperties(menu, master); // menu.setSite(site); menu.setMenuId(null); menu.setRecUpdateBy(userId); menu.setRecUpdateDatetime(new Date(System.currentTimeMillis())); menu.setRecCreateBy(userId); menu.setRecCreateDatetime(new Date(System.currentTimeMillis())); menu.setCategory(null); menu.setContent(null); menu.setItem(null); menu.setMenuLanguages(null); em.persist(menu); } } public void loadCategory() throws Exception { EntityManager em = JpaConnection.getInstance().getCurrentEntityManager(); String sql = "from Category where siteId = :siteId"; Query query = em.createQuery(sql); query.setParameter("siteId", Constants.SITE_SYSTEM); Iterator<?> iterator = query.getResultList().iterator(); while (iterator.hasNext()) { Category master = (Category) iterator.next(); Category category = new Category(); category.setCatNaturalKey(master.getCatNaturalKey()); category.setSeqNum(master.getSeqNum()); category.setPublished(master.getPublished()); category.setSite(site); category.setCatId(null); category.setRecUpdateBy(userId); category.setRecUpdateDatetime(new Date(System.currentTimeMillis())); category.setRecCreateBy(userId); category.setRecCreateDatetime(new Date(System.currentTimeMillis())); category.setMenus(null); category.setCategoryLanguages(null); em.persist(category); } } public void loadTax() throws Exception { EntityManager em = JpaConnection.getInstance().getCurrentEntityManager(); String sql = "from Tax where siteId = :siteId"; Query query = em.createQuery(sql); query.setParameter("siteId", Constants.SITE_SYSTEM); Iterator<?> iterator = query.getResultList().iterator(); while (iterator.hasNext()) { Tax master = (Tax) iterator.next(); Tax tax = new Tax(); Set<Country> countries = tax.getCountries(); Set<State> states = tax.getStates(); PropertyUtils.copyProperties(tax, master); tax.setSite(site); tax.setTaxId(null); tax.setRecUpdateBy(userId); tax.setRecUpdateDatetime(new Date(System.currentTimeMillis())); tax.setRecCreateBy(userId); tax.setRecCreateDatetime(new Date(System.currentTimeMillis())); tax.setTaxLanguages(null); tax.setCountries(countries); tax.setStates(states); Iterator<?> it = null; if (master.getCountries() != null) { it = master.getCountries().iterator(); while (it.hasNext()) { Country mc = (Country) it.next(); Country country = CountryDAO.loadByCountryName(site.getSiteId(), mc.getCountryName()); tax.getCountries().add(country); } } if (master.getStates() != null) { it = master.getStates().iterator(); while (it.hasNext()) { State mc = (State) it.next(); State state = StateDAO.loadByStateName(site.getSiteId(), mc.getStateName()); tax.getStates().add(state); } } em.persist(tax); } } public void loadTemplate() throws Exception { /* EntityManager em = JpaConnection.getInstance().getCurrentEntityManager(); String sql = "from Template where siteId = :siteId order by templateName"; Query query = em.createQuery(sql); query.setParameter("siteId", Constants.SITE_SYSTEM); Iterator<?> iterator = query.getResultList().iterator(); while (iterator.hasNext()) { Template master = (Template) iterator.next(); Template template = new Template(); PropertyUtils.copyProperties(template, master); template.setSite(site); template.setTemplateId(null); template.setRecUpdateBy(userId); template.setRecUpdateDatetime(new Date(System.currentTimeMillis())); template.setRecCreateBy(userId); template.setRecCreateDatetime(new Date(System.currentTimeMillis())); em.persist(template); } */ } Vector<ShippingType> shippingTypes = new Vector<ShippingType>(); public void loadShippingType() throws Exception { EntityManager em = JpaConnection.getInstance().getCurrentEntityManager(); String sql = "from ShippingType where siteId = :siteId order by shippingTypeId"; Query query = em.createQuery(sql); query.setParameter("siteId", Constants.SITE_SYSTEM); Iterator<?> iterator = query.getResultList().iterator(); while (iterator.hasNext()) { ShippingType master = (ShippingType) iterator.next(); ShippingType shippingType = new ShippingType(); PropertyUtils.copyProperties(shippingType, master); shippingType.setSite(site); shippingType.setRecUpdateBy(userId); shippingType.setRecUpdateDatetime(new Date(System.currentTimeMillis())); shippingType.setRecCreateBy(userId); shippingType.setRecCreateDatetime(new Date(System.currentTimeMillis())); shippingType.setShippingMethodRegionTypes(null); shippingTypes.add(shippingType); em.persist(shippingType); } } Vector<ShippingRegion> shippingRegions = new Vector<ShippingRegion>(); public void loadShippingRegion() throws Exception { EntityManager em = JpaConnection.getInstance().getCurrentEntityManager(); String sql = "from ShippingRegion where siteId = :siteId order by shippingRegionId"; Query query = em.createQuery(sql); query.setParameter("siteId", Constants.SITE_SYSTEM); Iterator<?> iterator = query.getResultList().iterator(); while (iterator.hasNext()) { ShippingRegion master = (ShippingRegion) iterator.next(); ShippingRegion shippingRegion = new ShippingRegion(); Set<Country> countries = shippingRegion.getCountries(); Set<State> states = shippingRegion.getStates(); PropertyUtils.copyProperties(shippingRegion, master); shippingRegion.setSite(site); shippingRegion.setShippingRegionId(null); shippingRegion.setRecUpdateBy(userId); shippingRegion.setRecUpdateDatetime(new Date(System.currentTimeMillis())); shippingRegion.setRecCreateBy(userId); shippingRegion.setRecCreateDatetime(new Date(System.currentTimeMillis())); shippingRegion.setCountries(countries); shippingRegion.setStates(states); shippingRegion.setZipCodes(null); shippingRegion.setShippingMethodRegions(null); shippingRegion.setShippingMethodRegionTypes(null); Iterator<?> it = null; if (master.getCountries() != null) { it = master.getCountries().iterator(); while (it.hasNext()) { Country mc = (Country) it.next(); Country country = CountryDAO.loadByCountryName(site.getSiteId(), mc.getCountryName()); shippingRegion.getCountries().add(country); } } if (master.getStates() != null) { it = master.getStates().iterator(); while (it.hasNext()) { State mc = (State) it.next(); State state = StateDAO.loadByStateName(site.getSiteId(), mc.getStateName()); shippingRegion.getStates().add(state); } } shippingRegions.add(shippingRegion); em.persist(shippingRegion); } } public void loadShippingMethod() throws Exception { EntityManager em = JpaConnection.getInstance().getCurrentEntityManager(); String sql = "from ShippingMethod where siteId = :siteId order by shippingMethodId"; Query query = em.createQuery(sql); query.setParameter("siteId", Constants.SITE_SYSTEM); Iterator<?> iterator = query.getResultList().iterator(); while (iterator.hasNext()) { ShippingMethod master = (ShippingMethod) iterator.next(); ShippingMethod shippingMethod = new ShippingMethod(); shippingMethod.setSite(site); shippingMethod.setSeqNum(master.getSeqNum()); shippingMethod.setPublished(master.getPublished()); shippingMethod.setRecUpdateBy(userId); shippingMethod.setRecUpdateDatetime(new Date(System.currentTimeMillis())); shippingMethod.setRecCreateBy(userId); shippingMethod.setRecCreateDatetime(new Date(System.currentTimeMillis())); for (ShippingMethodLanguage language : master.getShippingMethodLanguages()) { ShippingMethodLanguage shippingMethodLanguage = new ShippingMethodLanguage(); shippingMethodLanguage.setShippingMethodName(language.getShippingMethodName()); shippingMethodLanguage.setRecUpdateBy(userId); shippingMethodLanguage.setRecUpdateDatetime(new Date(System.currentTimeMillis())); shippingMethodLanguage.setRecCreateBy(userId); shippingMethodLanguage.setRecCreateDatetime(new Date(System.currentTimeMillis())); em.persist(shippingMethodLanguage); if (language.getShippingMethodLangId() .equals(master.getShippingMethodLanguage().getShippingMethodLangId())) { shippingMethod.setShippingMethodLanguage(shippingMethodLanguage); } shippingMethod.getShippingMethodLanguages().add(shippingMethodLanguage); } if (master.getShippingMethodRegions() != null) { Iterator<?> it = master.getShippingMethodRegions().iterator(); while (it.hasNext()) { ShippingMethodRegion m_shippingMethodRegion = (ShippingMethodRegion) it.next(); ShippingMethodRegion shippingMethodRegion = new ShippingMethodRegion(); shippingMethodRegion.setPublished(m_shippingMethodRegion.getPublished()); shippingMethodRegion.setRecUpdateBy(userId); shippingMethodRegion.setRecUpdateDatetime(new Date(System.currentTimeMillis())); shippingMethodRegion.setRecCreateBy(userId); shippingMethodRegion.setRecCreateDatetime(new Date(System.currentTimeMillis())); shippingMethodRegion.setShippingMethod(shippingMethod); ShippingRegion shippingRegion = getShippingRegion( m_shippingMethodRegion.getShippingRegion().getShippingRegionName()); shippingMethodRegion.setShippingRegion(shippingRegion); if (m_shippingMethodRegion.getShippingMethodRegionTypes() != null) { Iterator<?> it1 = m_shippingMethodRegion.getShippingMethodRegionTypes().iterator(); while (it1.hasNext()) { ShippingMethodRegionType m_shippingMethodRegionType = (ShippingMethodRegionType) it1 .next(); ShippingMethodRegionType shippingMethodRegionType = new ShippingMethodRegionType(); shippingMethodRegionType.setPublished(m_shippingMethodRegionType.getPublished()); shippingMethodRegionType.setRecUpdateBy(userId); shippingMethodRegionType.setRecUpdateDatetime(new Date(System.currentTimeMillis())); shippingMethodRegionType.setRecCreateBy(userId); shippingMethodRegionType.setRecCreateDatetime(new Date(System.currentTimeMillis())); shippingMethodRegionType.setShippingRegion(shippingRegion); shippingMethodRegionType.setShippingMethod(shippingMethod); shippingMethodRegionType.setShippingType(getShippingType( m_shippingMethodRegionType.getShippingType().getShippingTypeName())); ShippingRate m_shippingRate = m_shippingMethodRegionType.getShippingRate(); ShippingRate shippingRate = new ShippingRate(); PropertyUtils.copyProperties(shippingRate, m_shippingRate); shippingRate.setPublished(m_shippingRate.getPublished()); shippingRate.setRecUpdateBy(userId); shippingRate.setRecUpdateDatetime(new Date(System.currentTimeMillis())); shippingRate.setRecCreateBy(userId); shippingRate.setRecCreateDatetime(new Date(System.currentTimeMillis())); shippingMethodRegionType.setShippingRate(shippingRate); em.persist(shippingRate); em.persist(shippingMethodRegionType); shippingMethodRegion.getShippingMethodRegionTypes().add(shippingMethodRegionType); } } shippingMethod.getShippingMethodRegions().add(shippingMethodRegion); } } em.persist(shippingMethod); } } public ShippingRegion getShippingRegion(String shippingRegionName) { Iterator<?> iterator = shippingRegions.iterator(); while (iterator.hasNext()) { ShippingRegion shippingRegion = (ShippingRegion) iterator.next(); if (shippingRegion.getShippingRegionName().equals(shippingRegionName)) { return shippingRegion; } } return null; } public ShippingType getShippingType(String shippingTypeName) { Iterator<?> iterator = shippingTypes.iterator(); while (iterator.hasNext()) { ShippingType shippingType = (ShippingType) iterator.next(); if (shippingType.getShippingTypeName().equals(shippingTypeName)) { return shippingType; } } return null; } public void loadCreditCard() throws Exception { EntityManager em = JpaConnection.getInstance().getCurrentEntityManager(); String sql = "from CreditCard where siteId = :siteId order by creditCardId"; Query query = em.createQuery(sql); query.setParameter("siteId", Constants.SITE_SYSTEM); Iterator<?> iterator = query.getResultList().iterator(); while (iterator.hasNext()) { CreditCard master = (CreditCard) iterator.next(); CreditCard creditCard = new CreditCard(); PropertyUtils.copyProperties(creditCard, master); creditCard.setSite(site); creditCard.setCreditCardId(null); creditCard.setRecUpdateBy(userId); creditCard.setRecUpdateDatetime(new Date(System.currentTimeMillis())); creditCard.setRecCreateBy(userId); creditCard.setRecCreateDatetime(new Date(System.currentTimeMillis())); em.persist(creditCard); } } }