From do-not-reply at jboss.org Tue Aug 16 03:43:50 2011 Content-Type: multipart/mixed; boundary="===============8003241655960895203==" MIME-Version: 1.0 From: do-not-reply at jboss.org To: gatein-commits at lists.jboss.org Subject: [gatein-commits] gatein SVN: r7145 - in portal/branches/api/component/api-impl/src: test/java/org/gatein/portal/api/impl/portal and 1 other directory. Date: Tue, 16 Aug 2011 03:43:38 -0400 Message-ID: <201108160743.p7G7hcFp008947@svn01.web.mwc.hst.phx2.redhat.com> --===============8003241655960895203== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Author: julien_viet Date: 2011-08-16 03:43:36 -0400 (Tue, 16 Aug 2011) New Revision: 7145 Modified: portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/a= pi/impl/portal/NavigationImpl.java portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/a= pi/impl/portal/PageImpl.java portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/a= pi/impl/portal/SiteImpl.java portal/branches/api/component/api-impl/src/test/java/org/gatein/portal/a= pi/impl/portal/NavigationTestCase.java Log: more work Modified: portal/branches/api/component/api-impl/src/main/java/org/gatein/p= ortal/api/impl/portal/NavigationImpl.java =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --- portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/= api/impl/portal/NavigationImpl.java 2011-08-16 07:29:10 UTC (rev 7144) +++ portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/= api/impl/portal/NavigationImpl.java 2011-08-16 07:43:36 UTC (rev 7145) @@ -146,7 +146,7 @@ String pageRef =3D context.getState().getPageRef(); if (pageRef !=3D null) { - return site.pageRegistry.getPageByRef(pageRef); + return site.pages.getPageByRef(pageRef); } else { Modified: portal/branches/api/component/api-impl/src/main/java/org/gatein/p= ortal/api/impl/portal/PageImpl.java =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --- portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/= api/impl/portal/PageImpl.java 2011-08-16 07:29:10 UTC (rev 7144) +++ portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/= api/impl/portal/PageImpl.java 2011-08-16 07:43:36 UTC (rev 7145) @@ -29,8 +29,6 @@ import org.gatein.portal.api.impl.GateInImpl; import org.gatein.portal.api.impl.IdentifiableImpl; = -import java.util.Collection; - /** @author Chris Laprun */ public class PageImpl extends IdentifiableImpl implements P= age { Modified: portal/branches/api/component/api-impl/src/main/java/org/gatein/p= ortal/api/impl/portal/SiteImpl.java =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --- portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/= api/impl/portal/SiteImpl.java 2011-08-16 07:29:10 UTC (rev 7144) +++ portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/= api/impl/portal/SiteImpl.java 2011-08-16 07:43:36 UTC (rev 7145) @@ -35,19 +35,15 @@ import org.gatein.api.portal.Navigation; import org.gatein.api.portal.Page; import org.gatein.api.portal.Site; -import org.gatein.api.util.HierarchicalContainer; -import org.gatein.api.util.IterableIdentifiableCollection; import org.gatein.api.util.Type; import org.gatein.common.NotYetImplemented; import org.gatein.portal.api.impl.GateInImpl; import org.gatein.portal.api.impl.IdentifiableImpl; -import org.gatein.portal.api.impl.util.AdaptedIterableIdentifiableCollecti= on; import org.gatein.portal.api.impl.util.GateInTypesResolver; = import java.lang.reflect.UndeclaredThrowableException; import java.util.Collections; import java.util.HashMap; -import java.util.List; import java.util.Map; import java.util.regex.Matcher; import java.util.regex.Pattern; @@ -57,12 +53,20 @@ { = /** . */ - final PageContainer pageRegistry; + private static final Map EMPTY_CACHE =3D Collections= .emptyMap(); = + /** . */ + private static final Pattern PAGE_REF_PATTERN =3D Pattern.compile("^([^= :]+)::([^:]+)::([^:]+)$"); + + /** . */ + final PageContainer pages; + public SiteImpl(Site.Id siteId, String name, GateInImpl gateIn) { super(siteId, name, gateIn); - pageRegistry =3D new PageContainer(gateIn, this); + + // + this.pages =3D new PageContainer(); } = @Override @@ -76,11 +80,6 @@ return GateInTypesResolver.forName(key.getType(), Site.class); } = - public HierarchicalContainer getPageRegistry() - { - return pageRegistry; - } - public Navigation getNavigation() { GateInImpl gateIn =3D getGateInImpl(); @@ -134,35 +133,26 @@ = protected abstract SiteKey getSiteKey(); = - static class PageContainer implements HierarchicalContainer + public Page getPage(String pageName) { + return pages.getPageByName(pageName); + } = - /** . */ - private static final Map EMPTY_CACHE =3D Collecti= ons.emptyMap(); + class PageContainer + { = - private final GateInImpl gateIn; - private final SiteImpl site; + /** . */ private final Query pageDataQuery; = /** A local cache so we return the same pages. */ private Map cache; = - PageContainer(GateInImpl gateIn, SiteImpl site) + private PageContainer() { - this.gateIn =3D gateIn; - this.site =3D site; - this.pageDataQuery =3D new Query(site.getType().getName= (), null, PageData.class); + this.pageDataQuery =3D new Query(getType().getName(), n= ull, PageData.class); this.cache =3D EMPTY_CACHE; } = - public boolean contains(String key) - { - return getPageByName(key) !=3D null; - } - - /** . */ - private static final Pattern PAGE_REF_PATTERN =3D Pattern.compile("^= ([^:]+)::([^:]+)::([^:]+)$"); - PageImpl getPageByRef(String pageRef) { Matcher m =3D PAGE_REF_PATTERN.matcher(pageRef); @@ -173,7 +163,7 @@ = PageImpl getPageByName(String name) { - SiteKey siteKey =3D site.getSiteKey(); + SiteKey siteKey =3D getSiteKey(); PageKey key =3D new PageKey(siteKey.getTypeName(), siteKey.getNam= e(), name); return getPageData(key); } @@ -189,7 +179,7 @@ PageData data =3D gateIn.getDataStorage().getPage(key); if (data !=3D null) { - page =3D new PageImpl(data, site.getId(), gateIn); + page =3D new PageImpl(data, getId(), gateIn); if (cache =3D=3D EMPTY_CACHE) { cache =3D new HashMap(); @@ -208,76 +198,5 @@ } return page; } - - public Page createAndAdd(String key) - { - throw new NotYetImplemented(); // todo - } - - public Page get(String key) - { - return getPageByName(key); - } - - public org.gatein.api.id.Id getIdForChild(String key) - { - return site.getId().getIdForChild(key); - } - - public Page createAndAdd(org.gatein.api.id.Id id) - { - return createAndAdd(id.toString()); - } - - public IterableIdentifiableCollection getAll() - { - final List pageList =3D getAllPageData(); - return new AdaptedIterableIdentifiableCollection(= pageList.size(), pageList.iterator()) - { - public Page adapt(PageData old) - { - return new PageImpl(old, site.getId(), gateIn); - } - - public boolean contains(org.gatein.api.id.Id t) - { - return getPageByName(t.toString()) !=3D null; - } - }; - } - - private List getAllPageData() - { - try - { - gateIn.begin(); - - return gateIn.getDataStorage().find(pageDataQuery).getAll(); - } - catch (Exception e) - { - throw new RuntimeException(e); - } - finally - { - gateIn.end(); - } - } - - public int size() - { - // todo: optimize - return getAllPageData().size(); - } - - public Page get(org.gatein.api.id.Id id) - { - return get(id.toString()); - } - - public boolean contains(org.gatein.api.id.Id id) - { - return contains(id.toString()); - } } } Modified: portal/branches/api/component/api-impl/src/test/java/org/gatein/p= ortal/api/impl/portal/NavigationTestCase.java =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --- portal/branches/api/component/api-impl/src/test/java/org/gatein/portal/= api/impl/portal/NavigationTestCase.java 2011-08-16 07:29:10 UTC (rev 7144) +++ portal/branches/api/component/api-impl/src/test/java/org/gatein/portal/= api/impl/portal/NavigationTestCase.java 2011-08-16 07:43:36 UTC (rev 7145) @@ -19,7 +19,6 @@ import org.gatein.api.portal.Navigation; import org.gatein.api.portal.Page; import org.gatein.api.portal.Site; -import org.gatein.api.util.HierarchicalContainer; import org.gatein.portal.api.impl.GateInImpl; = import java.util.Iterator; @@ -127,8 +126,7 @@ = // Site site =3D gatein.getPortal(new Site.Id(Site.PORTAL, "classic")); - HierarchicalContainer pages =3D site.getPageRegistry(); - Page homePage =3D pages.get("homepage"); + Page homePage =3D site.getPage("homepage"); assertNotNull(homePage); = // --===============8003241655960895203==--