Weitere Modifikationen AtoZ, noch nicht funktionsfähig.
git-svn-id: https://svn.libreccm.org/ccm/trunk@1621 8810af33-2d31-482b-a856-94f89814c4dfmaster
parent
0ad0fbd6ff
commit
718e988884
|
|
@ -26,6 +26,10 @@
|
||||||
</ccm:contacts>
|
</ccm:contacts>
|
||||||
|
|
||||||
<ccm:description>
|
<ccm:description>
|
||||||
|
The ccm-atoz-siteproxy package is an extension for the ccm-atoz package in
|
||||||
|
combination with the ccm-cms-types-siteproxy package. It enables the
|
||||||
|
ccm-atoz package to deal with siteproxy content.
|
||||||
|
|
||||||
The ccm-atoz package enables a site to present all it's content in
|
The ccm-atoz package enables a site to present all it's content in
|
||||||
alphabetical order as an additional service to it's users. Usually the
|
alphabetical order as an additional service to it's users. Usually the
|
||||||
theme provides a link to the page as part of its static elements.
|
theme provides a link to the page as part of its static elements.
|
||||||
|
|
|
||||||
|
|
@ -15,11 +15,12 @@
|
||||||
// License along with this library; if not, write to the Free Software
|
// License along with this library; if not, write to the Free Software
|
||||||
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||||
|
|
||||||
model com.arsdigita.atoz;
|
model com.arsdigita.atoz.siteproxy;
|
||||||
|
|
||||||
|
import com.arsdigita.atoz.AtoZProvider;
|
||||||
import com.arsdigita.categorization.Category;
|
import com.arsdigita.categorization.Category;
|
||||||
|
|
||||||
object type AtoZSiteProxyProvider extends AtoZProvider {
|
object type SiteProxyProvider extends AtoZProvider {
|
||||||
Category[1..1] category = join atoz_siteproxy_provider.category_id to
|
Category[1..1] category = join atoz_siteproxy_provider.category_id to
|
||||||
cat_categories.category_id;
|
cat_categories.category_id;
|
||||||
reference key (atoz_siteproxy_provider.provider_id);
|
reference key (atoz_siteproxy_provider.provider_id);
|
||||||
|
|
@ -0,0 +1,149 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
|
||||||
|
<xrd:adapters xmlns:xrd="http://xmlns.redhat.com/schemas/waf/xml-renderer-rules"
|
||||||
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||||
|
xsi:schemaLocation="http://rhea.redhat.com/schemas/waf/xml-renderer-rules xml-renderer-rules.xsd">
|
||||||
|
<!--
|
||||||
|
<xrd:context name="com.arsdigita.atoz.ui.admin.ProviderList">
|
||||||
|
<xrd:adapter objectType="com.arsdigita.atoz.AtoZProvider">
|
||||||
|
<xrd:attributes rule="exclude">
|
||||||
|
<xrd:property name="/object/id"/>
|
||||||
|
<xrd:property name="/object/defaultDomainClass"/>
|
||||||
|
<xrd:property name="/object/displayName"/>
|
||||||
|
</xrd:attributes>
|
||||||
|
</xrd:adapter>
|
||||||
|
</xrd:context>
|
||||||
|
-->
|
||||||
|
|
||||||
|
<xrd:context name="com.arsdigita.atoz.ui.admin.ProviderDetails">
|
||||||
|
<!--
|
||||||
|
<xrd:adapter objectType="com.arsdigita.atoz.CategoryProvider">
|
||||||
|
<xrd:attributes rule="exclude">
|
||||||
|
<xrd:property name="/object/id"/>
|
||||||
|
<xrd:property name="/object/defaultDomainClass"/>
|
||||||
|
<xrd:property name="/object/displayName"/>
|
||||||
|
<xrd:property name="/object/rootUseContext/id"/>
|
||||||
|
<xrd:property name="/object/rootUseContext/rootCategory/id"/>
|
||||||
|
<xrd:property name="/object/rootUseContext/rootCategory/objectType"/>
|
||||||
|
<xrd:property name="/object/rootUseContext/rootCategory/defaultDomainClass"/>
|
||||||
|
<xrd:property name="/object/rootUseContext/rootCategory/defaultAncestors"/>
|
||||||
|
</xrd:attributes>
|
||||||
|
|
||||||
|
<xrd:associations rule="include">
|
||||||
|
<xrd:property name="/object/rootUseContext"/>
|
||||||
|
<xrd:property name="/object/rootUseContext/rootCategory"/>
|
||||||
|
</xrd:associations>
|
||||||
|
</xrd:adapter>
|
||||||
|
-->
|
||||||
|
<!--
|
||||||
|
<xrd:adapter objectType="com.arsdigita.london.atoz.terms.DomainProvider">
|
||||||
|
<xrd:attributes rule="exclude">
|
||||||
|
<xrd:property name="/object/id"/>
|
||||||
|
<xrd:property name="/object/defaultDomainClass"/>
|
||||||
|
<xrd:property name="/object/displayName"/>
|
||||||
|
</xrd:attributes>
|
||||||
|
</xrd:adapter>
|
||||||
|
-->
|
||||||
|
<!--
|
||||||
|
<xrd:adapter objectType="com.arsdigita.atoz.ItemProvider">
|
||||||
|
<xrd:attributes rule="exclude">
|
||||||
|
<xrd:property name="/object/id"/>
|
||||||
|
<xrd:property name="/object/defaultDomainClass"/>
|
||||||
|
<xrd:property name="/object/displayName"/>
|
||||||
|
<xrd:property name="/object/category/id"/>
|
||||||
|
<xrd:property name="/object/category/objectType"/>
|
||||||
|
<xrd:property name="/object/category/defaultDomainClass"/>
|
||||||
|
<xrd:property name="/object/category/defaultAncestors"/>
|
||||||
|
</xrd:attributes>
|
||||||
|
<xrd:associations rule="include">
|
||||||
|
<xrd:property name="/object/category"/>
|
||||||
|
</xrd:associations>
|
||||||
|
</xrd:adapter>
|
||||||
|
-->
|
||||||
|
|
||||||
|
<xrd:adapter objectType="com.arsdigita.atoz.siteproxy.SiteProxyProvider">
|
||||||
|
<xrd:attributes rule="exclude">
|
||||||
|
<xrd:property name="/object/id"/>
|
||||||
|
<xrd:property name="/object/defaultDomainClass"/>
|
||||||
|
<xrd:property name="/object/displayName"/>
|
||||||
|
<xrd:property name="/object/category/id"/>
|
||||||
|
<xrd:property name="/object/category/objectType"/>
|
||||||
|
<xrd:property name="/object/category/defaultDomainClass"/>
|
||||||
|
<xrd:property name="/object/category/defaultAncestors"/>
|
||||||
|
</xrd:attributes>
|
||||||
|
<xrd:associations rule="include">
|
||||||
|
<xrd:property name="/object/category"/>
|
||||||
|
</xrd:associations>
|
||||||
|
</xrd:adapter>
|
||||||
|
|
||||||
|
</xrd:context>
|
||||||
|
|
||||||
|
<!--
|
||||||
|
<xrd:context name="com.arsdigita.atoz.ui.admin.CategoryProviderBlackList">
|
||||||
|
<xrd:adapter objectType="com.arsdigita.categorization.Category">
|
||||||
|
<xrd:attributes rule="exclude">
|
||||||
|
<xrd:property name="/object/id"/>
|
||||||
|
<xrd:property name="/object/objectType"/>
|
||||||
|
<xrd:property name="/object/defaultDomainClass"/>
|
||||||
|
<xrd:property name="/object/displayName"/>
|
||||||
|
</xrd:attributes>
|
||||||
|
</xrd:adapter>
|
||||||
|
</xrd:context>
|
||||||
|
|
||||||
|
<xrd:context name="com.arsdigita.atoz.ui.admin.CategoryProviderContentTypeBlacklist">
|
||||||
|
<xrd:adapter objectType="com.arsdigita.cms.ContentType">
|
||||||
|
<xrd:attributes rule="exclude">
|
||||||
|
<xrd:property name="/object/id"/>
|
||||||
|
<xrd:property name="/object/objectType"/>
|
||||||
|
<xrd:property name="/object/defaultDomainClass"/>
|
||||||
|
<xrd:property name="/object/displayName"/>
|
||||||
|
</xrd:attributes>
|
||||||
|
</xrd:adapter>
|
||||||
|
</xrd:context>
|
||||||
|
|
||||||
|
<xrd:context name="com.arsdigita.atoz.ui.admin.CategoryProviderAliasList">
|
||||||
|
<xrd:adapter objectType="com.arsdigita.categorization.Category">
|
||||||
|
<xrd:attributes rule="exclude">
|
||||||
|
<xrd:property name="/object/id"/>
|
||||||
|
<xrd:property name="/object/objectType"/>
|
||||||
|
<xrd:property name="/object/defaultDomainClass"/>
|
||||||
|
<xrd:property name="/object/displayName"/>
|
||||||
|
</xrd:attributes>
|
||||||
|
</xrd:adapter>
|
||||||
|
|
||||||
|
<xrd:adapter objectType="com.arsdigita.atoz.CategoryAlias">
|
||||||
|
<xrd:attributes rule="exclude">
|
||||||
|
<xrd:property name="/object/id"/>
|
||||||
|
<xrd:property name="/object/objectType"/>
|
||||||
|
<xrd:property name="/object/defaultDomainClass"/>
|
||||||
|
<xrd:property name="/object/displayName"/>
|
||||||
|
</xrd:attributes>
|
||||||
|
</xrd:adapter>
|
||||||
|
</xrd:context>
|
||||||
|
-->
|
||||||
|
<!--
|
||||||
|
<xrd:context name="com.arsdigita.atoz.ui.admin.ItemProviderAliasList">
|
||||||
|
<xrd:adapter objectType="com.arsdigita.cms.ContentItem">
|
||||||
|
<xrd:attributes rule="exclude"> -->
|
||||||
|
<!--
|
||||||
|
<xrd:property name="/object/id"/>
|
||||||
|
<xrd:property name="/object/objectType"/>
|
||||||
|
<xrd:property name="/object/defaultDomainClass"/>
|
||||||
|
<xrd:property name="/object/displayName"/>
|
||||||
|
-->
|
||||||
|
<!-- </xrd:attributes>
|
||||||
|
</xrd:adapter>
|
||||||
|
|
||||||
|
<xrd:adapter objectType="com.arsdigita.atoz.ItemAlias">
|
||||||
|
<xrd:attributes rule="exclude"> -->
|
||||||
|
<!--
|
||||||
|
<xrd:property name="/object/id"/>
|
||||||
|
<xrd:property name="/object/objectType"/>
|
||||||
|
<xrd:property name="/object/defaultDomainClass"/>
|
||||||
|
<xrd:property name="/object/displayName"/>
|
||||||
|
-->
|
||||||
|
<!-- </xrd:attributes>
|
||||||
|
</xrd:adapter>
|
||||||
|
</xrd:context> -->
|
||||||
|
|
||||||
|
</xrd:adapters>
|
||||||
|
|
@ -1,25 +0,0 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
|
|
||||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
|
||||||
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
|
|
||||||
version="2.4">
|
|
||||||
|
|
||||||
<!-- module ccm-atoz - servlet declarations BEGIN -->
|
|
||||||
<servlet>
|
|
||||||
<servlet-name>atoz-files</servlet-name>
|
|
||||||
<servlet-class>com.arsdigita.web.ApplicationFileServlet</servlet-class>
|
|
||||||
<init-param>
|
|
||||||
<param-name>template-path</param-name>
|
|
||||||
<param-value>/templates/ccm-atoz</param-value>
|
|
||||||
</init-param>
|
|
||||||
</servlet>
|
|
||||||
<!-- module ccm-atoz - servlet declarations END -->
|
|
||||||
|
|
||||||
<!-- module ccm-atoz - servlet mappings BEGIN -->
|
|
||||||
<servlet-mapping>
|
|
||||||
<servlet-name>atoz-files</servlet-name>
|
|
||||||
<url-pattern>/ccm-atoz/files/*</url-pattern>
|
|
||||||
</servlet-mapping>
|
|
||||||
<!-- module ccm-atoz - servlet mappings END -->
|
|
||||||
|
|
||||||
</web-app>
|
|
||||||
|
|
@ -0,0 +1,5 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<registry>
|
||||||
|
<config class="com.arsdigita.atoz.siteproxy.Config"
|
||||||
|
storage="ccm-atoz/siteproxy.properties"/>
|
||||||
|
</registry>
|
||||||
|
|
@ -0,0 +1,22 @@
|
||||||
|
<load>
|
||||||
|
|
||||||
|
<requires>
|
||||||
|
<table name="inits"/>
|
||||||
|
<table name="acs_objects"/>
|
||||||
|
<initializer class="com.arsdigita.core.Initializer"/>
|
||||||
|
<initializer class="com.arsdigita.atoz.Initializer"/>
|
||||||
|
</requires>
|
||||||
|
|
||||||
|
<provides>
|
||||||
|
<table name="atoz_provider"/>
|
||||||
|
<initializer class="com.arsdigita.atoz.siteproxy.Initializer"/>
|
||||||
|
</provides>
|
||||||
|
|
||||||
|
<scripts>
|
||||||
|
<schema directory="ccm-atoz-siteproxy"/>
|
||||||
|
<!--
|
||||||
|
<data class="com.arsdigita.atoz.siteproxy.Loader"/>
|
||||||
|
-->
|
||||||
|
</scripts>
|
||||||
|
|
||||||
|
</load>
|
||||||
|
|
@ -0,0 +1,8 @@
|
||||||
|
<upgrade>
|
||||||
|
<!--
|
||||||
|
<version from="x.y.z" to="x.y.a">
|
||||||
|
<!-- AtoZ SiteProxy ........ -->
|
||||||
|
<script sql="ccm-atoz-siteproxy/upgrade/::database::-x.y.z-x.y.a.sql"/>
|
||||||
|
</version>
|
||||||
|
-->
|
||||||
|
</upgrade>
|
||||||
|
|
@ -0,0 +1,90 @@
|
||||||
|
/*
|
||||||
|
* Copyright (C) 2001-2004 Red Hat Inc. All Rights Reserved.
|
||||||
|
*
|
||||||
|
* This library is free software; you can redistribute it and/or
|
||||||
|
* modify it under the terms of the GNU Lesser General Public License
|
||||||
|
* as published by the Free Software Foundation; either version 2.1 of
|
||||||
|
* the License, or (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This library 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
|
||||||
|
* Lesser General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU Lesser General Public
|
||||||
|
* License along with this library; if not, write to the Free Software
|
||||||
|
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||||
|
*/
|
||||||
|
|
||||||
|
package com.arsdigita.atoz.siteproxy;
|
||||||
|
|
||||||
|
import com.arsdigita.runtime.AbstractConfig;
|
||||||
|
import com.arsdigita.util.parameter.BooleanParameter;
|
||||||
|
import com.arsdigita.util.parameter.ClassParameter;
|
||||||
|
import com.arsdigita.util.parameter.Parameter;
|
||||||
|
import com.arsdigita.util.parameter.ResourceParameter;
|
||||||
|
|
||||||
|
import com.arsdigita.categorization.ui.ApplicationCategoryPicker;
|
||||||
|
|
||||||
|
import java.io.InputStream;
|
||||||
|
|
||||||
|
import org.apache.log4j.Logger;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This is the configuration file for the AtoZ application
|
||||||
|
*/
|
||||||
|
public class Config extends AbstractConfig {
|
||||||
|
|
||||||
|
/** A logger instance to assist debugging. */
|
||||||
|
private static final Logger s_log = Logger.getLogger(Config.class);
|
||||||
|
|
||||||
|
/** Singelton config object. */
|
||||||
|
private static Config s_conf;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Gain a Config object.
|
||||||
|
*
|
||||||
|
* Singelton pattern, don't instantiate a config object using the
|
||||||
|
* constructor directly!
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
public static synchronized Config getConfig() {
|
||||||
|
if (s_conf == null) {
|
||||||
|
s_conf = new Config();
|
||||||
|
s_conf.load();
|
||||||
|
}
|
||||||
|
|
||||||
|
return s_conf;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// ///////////////////////////////////////////////////////////////////////
|
||||||
|
//
|
||||||
|
// set of configuration parameters
|
||||||
|
|
||||||
|
/** Rules for configuring information in generated XML */
|
||||||
|
private Parameter m_adapters = new ResourceParameter
|
||||||
|
("com.arsdigita.atoz.siteproxy.traversal_adapters",
|
||||||
|
Parameter.REQUIRED,
|
||||||
|
"/WEB-INF/resources/atoz-siteproxy-adapters.xml");
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Constructor
|
||||||
|
*/
|
||||||
|
public Config() {
|
||||||
|
|
||||||
|
register(m_adapters);
|
||||||
|
|
||||||
|
loadInfo();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Provides access to the traversal adapter as stream.
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
InputStream getTraversalAdapters() {
|
||||||
|
return (InputStream)get(m_adapters);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,4 @@
|
||||||
|
com.arsdigita.atoz.siteproxy.traversal_adapters.title=XML renderer rules
|
||||||
|
com.arsdigita.atoz.siteproxy.traversal_adapters.purpose=Rules for configuring information in generated XML
|
||||||
|
com.arsdigita.atoz.siteproxy.traversal_adapters.format=[string]
|
||||||
|
com.arsdigita.atoz.siteproxy.traversal_adapters.example=/WEB-INF/resources/atoz-siteproxy-adapters.xml
|
||||||
|
|
@ -22,8 +22,10 @@ import com.arsdigita.atoz.AtoZ;
|
||||||
import com.arsdigita.atoz.AtoZProviderType;
|
import com.arsdigita.atoz.AtoZProviderType;
|
||||||
import com.arsdigita.atoz.siteproxy.ui.admin.SiteProxyProviderAdmin;
|
import com.arsdigita.atoz.siteproxy.ui.admin.SiteProxyProviderAdmin;
|
||||||
import com.arsdigita.atoz.siteproxy.ui.admin.SiteProxyProviderForm;
|
import com.arsdigita.atoz.siteproxy.ui.admin.SiteProxyProviderForm;
|
||||||
|
import com.arsdigita.domain.xml.TraversalHandler;
|
||||||
import com.arsdigita.runtime.CompoundInitializer;
|
import com.arsdigita.runtime.CompoundInitializer;
|
||||||
import com.arsdigita.runtime.DomainInitEvent;
|
import com.arsdigita.runtime.DomainInitEvent;
|
||||||
|
import com.arsdigita.xml.XML;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
|
|
@ -39,10 +41,14 @@ public class Initializer extends CompoundInitializer {
|
||||||
public void init(DomainInitEvent evt) {
|
public void init(DomainInitEvent evt) {
|
||||||
super.init(evt);
|
super.init(evt);
|
||||||
|
|
||||||
|
|
||||||
|
XML.parse(Config.getConfig().getTraversalAdapters(),
|
||||||
|
new TraversalHandler());
|
||||||
|
|
||||||
AtoZ.registerProviderType(
|
AtoZ.registerProviderType(
|
||||||
new AtoZProviderType("SiteProxy Provider",
|
new AtoZProviderType("SiteProxy Provider",
|
||||||
"Provides a SiteProxy A-Z",
|
"Provides a SiteProxy A-Z",
|
||||||
AtoZSiteProxyProvider.class,
|
SiteProxyProvider.class,
|
||||||
SiteProxyProviderForm.class,
|
SiteProxyProviderForm.class,
|
||||||
SiteProxyProviderAdmin.class));
|
SiteProxyProviderAdmin.class));
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -22,10 +22,6 @@ import com.arsdigita.atoz.AtoZAtomicEntry;
|
||||||
import com.arsdigita.atoz.AtoZCompoundEntry;
|
import com.arsdigita.atoz.AtoZCompoundEntry;
|
||||||
import com.arsdigita.atoz.AtoZEntry;
|
import com.arsdigita.atoz.AtoZEntry;
|
||||||
import com.arsdigita.atoz.AtoZProvider;
|
import com.arsdigita.atoz.AtoZProvider;
|
||||||
import java.math.BigDecimal;
|
|
||||||
import java.util.ArrayList;
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
import com.arsdigita.cms.CMS;
|
import com.arsdigita.cms.CMS;
|
||||||
import com.arsdigita.cms.contenttypes.SiteProxy;
|
import com.arsdigita.cms.contenttypes.SiteProxy;
|
||||||
import com.arsdigita.cms.dispatcher.SiteProxyPanel;
|
import com.arsdigita.cms.dispatcher.SiteProxyPanel;
|
||||||
|
|
@ -37,10 +33,19 @@ import com.arsdigita.web.URL;
|
||||||
import com.arsdigita.web.Web;
|
import com.arsdigita.web.Web;
|
||||||
import com.arsdigita.xml.Element;
|
import com.arsdigita.xml.Element;
|
||||||
|
|
||||||
public class AtoZSiteProxyGenerator extends AtoZGeneratorAbstractImpl {
|
import java.math.BigDecimal;
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
public class SiteProxyGenerator extends AtoZGeneratorAbstractImpl {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Compound Entry for mathched Categories
|
* Compound Entry for matched Categories
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
private class AtoZCategoriesCompoundEntry implements AtoZCompoundEntry {
|
private class AtoZCategoriesCompoundEntry implements AtoZCompoundEntry {
|
||||||
|
|
@ -62,7 +67,7 @@ public class AtoZSiteProxyGenerator extends AtoZGeneratorAbstractImpl {
|
||||||
/*
|
/*
|
||||||
* (non-Javadoc)
|
* (non-Javadoc)
|
||||||
*
|
*
|
||||||
* @see com.arsdigita.london.atoz.AtoZCompoundEntry#getEntries()
|
* @see com.arsdigita.atoz.AtoZCompoundEntry#getEntries()
|
||||||
*/
|
*/
|
||||||
public AtoZEntry[] getEntries() {
|
public AtoZEntry[] getEntries() {
|
||||||
return (AtoZEntry[]) entries.toArray(new AtoZEntry[entries.size()]);
|
return (AtoZEntry[]) entries.toArray(new AtoZEntry[entries.size()]);
|
||||||
|
|
@ -71,7 +76,7 @@ public class AtoZSiteProxyGenerator extends AtoZGeneratorAbstractImpl {
|
||||||
/*
|
/*
|
||||||
* (non-Javadoc)
|
* (non-Javadoc)
|
||||||
*
|
*
|
||||||
* @see com.arsdigita.london.atoz.AtoZEntry#getTitle()
|
* @see com.arsdigita.atoz.AtoZEntry#getTitle()
|
||||||
*/
|
*/
|
||||||
public String getTitle() {
|
public String getTitle() {
|
||||||
return m_title;
|
return m_title;
|
||||||
|
|
@ -80,7 +85,7 @@ public class AtoZSiteProxyGenerator extends AtoZGeneratorAbstractImpl {
|
||||||
/*
|
/*
|
||||||
* (non-Javadoc)
|
* (non-Javadoc)
|
||||||
*
|
*
|
||||||
* @see com.arsdigita.london.atoz.AtoZEntry#getDescription()
|
* @see com.arsdigita.atoz.AtoZEntry#getDescription()
|
||||||
*/
|
*/
|
||||||
public String getDescription() {
|
public String getDescription() {
|
||||||
return m_description;
|
return m_description;
|
||||||
|
|
@ -88,7 +93,10 @@ public class AtoZSiteProxyGenerator extends AtoZGeneratorAbstractImpl {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private class AtoZSiteProxyAtomicEntry implements AtoZAtomicEntry {
|
/**
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
private class SiteProxyAtomicEntry implements AtoZAtomicEntry {
|
||||||
|
|
||||||
private static final String SITE_PROXY_PANEL_NAME = "cms:siteProxyPanel";
|
private static final String SITE_PROXY_PANEL_NAME = "cms:siteProxyPanel";
|
||||||
|
|
||||||
|
|
@ -98,7 +106,14 @@ public class AtoZSiteProxyGenerator extends AtoZGeneratorAbstractImpl {
|
||||||
|
|
||||||
private String m_url;
|
private String m_url;
|
||||||
|
|
||||||
public AtoZSiteProxyAtomicEntry(OID oid, String title, String url) {
|
/**
|
||||||
|
* Constructor
|
||||||
|
*
|
||||||
|
* @param oid
|
||||||
|
* @param title
|
||||||
|
* @param url
|
||||||
|
*/
|
||||||
|
public SiteProxyAtomicEntry(OID oid, String title, String url) {
|
||||||
m_oid = oid;
|
m_oid = oid;
|
||||||
m_title = title;
|
m_title = title;
|
||||||
m_url = url;
|
m_url = url;
|
||||||
|
|
@ -127,7 +142,7 @@ public class AtoZSiteProxyGenerator extends AtoZGeneratorAbstractImpl {
|
||||||
return null;
|
return null;
|
||||||
|
|
||||||
Element child = new Element(
|
Element child = new Element(
|
||||||
AtoZSiteProxyAtomicEntry.SITE_PROXY_PANEL_NAME,
|
SiteProxyAtomicEntry.SITE_PROXY_PANEL_NAME,
|
||||||
CMS.CMS_XML_NS);
|
CMS.CMS_XML_NS);
|
||||||
child.addAttribute("title", m_title);
|
child.addAttribute("title", m_title);
|
||||||
child.addAttribute("oid", m_oid.toString());
|
child.addAttribute("oid", m_oid.toString());
|
||||||
|
|
@ -145,12 +160,12 @@ public class AtoZSiteProxyGenerator extends AtoZGeneratorAbstractImpl {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public AtoZSiteProxyGenerator(AtoZProvider provider) {
|
public SiteProxyGenerator(AtoZProvider provider) {
|
||||||
super(provider);
|
super(provider);
|
||||||
}
|
}
|
||||||
|
|
||||||
public AtoZEntry[] getEntries(String letter) {
|
public AtoZEntry[] getEntries(String letter) {
|
||||||
AtoZSiteProxyProvider siteProxyProvider = (AtoZSiteProxyProvider) getProvider();
|
SiteProxyProvider siteProxyProvider = (SiteProxyProvider) getProvider();
|
||||||
|
|
||||||
DataQuery entries = siteProxyProvider.getAtomicEntries(letter);
|
DataQuery entries = siteProxyProvider.getAtomicEntries(letter);
|
||||||
|
|
||||||
|
|
@ -176,7 +191,7 @@ public class AtoZSiteProxyGenerator extends AtoZGeneratorAbstractImpl {
|
||||||
}
|
}
|
||||||
|
|
||||||
/* create atomic entry */
|
/* create atomic entry */
|
||||||
AtoZSiteProxyAtomicEntry atomicEntry = new AtoZSiteProxyAtomicEntry(
|
SiteProxyAtomicEntry atomicEntry = new SiteProxyAtomicEntry(
|
||||||
new OID(SiteProxy.BASE_DATA_OBJECT_TYPE, entries.get("id")),
|
new OID(SiteProxy.BASE_DATA_OBJECT_TYPE, entries.get("id")),
|
||||||
(String) entries.get("title"), (String) entries.get("url"));
|
(String) entries.get("title"), (String) entries.get("url"));
|
||||||
|
|
||||||
|
|
@ -9,37 +9,40 @@ import com.arsdigita.persistence.OID;
|
||||||
import com.arsdigita.persistence.SessionManager;
|
import com.arsdigita.persistence.SessionManager;
|
||||||
import com.arsdigita.util.Assert;
|
import com.arsdigita.util.Assert;
|
||||||
|
|
||||||
public class AtoZSiteProxyProvider extends AtoZProvider {
|
public class SiteProxyProvider extends AtoZProvider {
|
||||||
|
|
||||||
public static final String BASE_DATA_OBJECT_TYPE = "com.arsdigita.london.atoz.AtoZSiteProxyProvider";
|
public static final String BASE_DATA_OBJECT_TYPE =
|
||||||
|
"com.arsdigita.atoz.siteproxy.SiteProxyProvider";
|
||||||
|
|
||||||
public static final String CATEGORY = "category";
|
public static final String CATEGORY = "category";
|
||||||
|
|
||||||
private static final String ATOMIC_SITEPROXY_ENTRIES_QUERY = "com.arsdigita.london.atoz.getAtomicSiteProxyEntries";
|
private static final String ATOMIC_SITEPROXY_ENTRIES_QUERY =
|
||||||
|
"com.arsdigita.atoz.getAtomicSiteProxyEntries";
|
||||||
|
|
||||||
public AtoZSiteProxyProvider() {
|
public SiteProxyProvider() {
|
||||||
this(BASE_DATA_OBJECT_TYPE);
|
this(BASE_DATA_OBJECT_TYPE);
|
||||||
}
|
}
|
||||||
|
|
||||||
public AtoZSiteProxyProvider(String type) {
|
public SiteProxyProvider(String type) {
|
||||||
super(type);
|
super(type);
|
||||||
}
|
}
|
||||||
|
|
||||||
public AtoZSiteProxyProvider(DataObject obj) {
|
public SiteProxyProvider(DataObject obj) {
|
||||||
super(obj);
|
super(obj);
|
||||||
}
|
}
|
||||||
|
|
||||||
public AtoZSiteProxyProvider(OID oid) {
|
public SiteProxyProvider(OID oid) {
|
||||||
super(oid);
|
super(oid);
|
||||||
}
|
}
|
||||||
|
|
||||||
public AtoZGenerator getGenerator() {
|
public AtoZGenerator getGenerator() {
|
||||||
return new AtoZSiteProxyGenerator(this);
|
return new SiteProxyGenerator(this);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static AtoZSiteProxyProvider create(String title,
|
public static SiteProxyProvider create(String title,
|
||||||
String description, Category category) {
|
String description,
|
||||||
AtoZSiteProxyProvider siteProxyProvider = new AtoZSiteProxyProvider();
|
Category category) {
|
||||||
|
SiteProxyProvider siteProxyProvider = new SiteProxyProvider();
|
||||||
siteProxyProvider.setup(title, description, category);
|
siteProxyProvider.setup(title, description, category);
|
||||||
return siteProxyProvider;
|
return siteProxyProvider;
|
||||||
}
|
}
|
||||||
|
|
@ -25,7 +25,7 @@ import com.arsdigita.bebop.event.FormSubmissionListener;
|
||||||
import com.arsdigita.kernel.ui.ACSObjectSelectionModel;
|
import com.arsdigita.kernel.ui.ACSObjectSelectionModel;
|
||||||
import com.arsdigita.atoz.AtoZ;
|
import com.arsdigita.atoz.AtoZ;
|
||||||
import com.arsdigita.atoz.AtoZProvider;
|
import com.arsdigita.atoz.AtoZProvider;
|
||||||
import com.arsdigita.atoz.siteproxy.AtoZSiteProxyProvider;
|
import com.arsdigita.atoz.siteproxy.SiteProxyProvider;
|
||||||
import com.arsdigita.atoz.ui.admin.ProviderForm;
|
import com.arsdigita.atoz.ui.admin.ProviderForm;
|
||||||
import com.arsdigita.categorization.ui.CategoryPicker;
|
import com.arsdigita.categorization.ui.CategoryPicker;
|
||||||
import com.arsdigita.util.Classes;
|
import com.arsdigita.util.Classes;
|
||||||
|
|
@ -35,7 +35,7 @@ public class SiteProxyProviderForm extends ProviderForm {
|
||||||
private CategoryPicker m_category_picker;
|
private CategoryPicker m_category_picker;
|
||||||
|
|
||||||
public SiteProxyProviderForm(ACSObjectSelectionModel provider) {
|
public SiteProxyProviderForm(ACSObjectSelectionModel provider) {
|
||||||
super("siteProxyProvider", AtoZSiteProxyProvider.class, provider);
|
super("siteProxyProvider", SiteProxyProvider.class, provider);
|
||||||
|
|
||||||
setMetaDataAttribute("title", "SiteProxy provider properties");
|
setMetaDataAttribute("title", "SiteProxy provider properties");
|
||||||
}
|
}
|
||||||
|
|
@ -52,7 +52,7 @@ public class SiteProxyProviderForm extends ProviderForm {
|
||||||
|
|
||||||
protected void initWidgets(PageState state, AtoZProvider provider) {
|
protected void initWidgets(PageState state, AtoZProvider provider) {
|
||||||
super.initWidgets(state, provider);
|
super.initWidgets(state, provider);
|
||||||
AtoZSiteProxyProvider siteProxyProvider = (AtoZSiteProxyProvider) provider;
|
SiteProxyProvider siteProxyProvider = (SiteProxyProvider) provider;
|
||||||
if (siteProxyProvider != null)
|
if (siteProxyProvider != null)
|
||||||
m_category_picker.setCategory(state, siteProxyProvider
|
m_category_picker.setCategory(state, siteProxyProvider
|
||||||
.getCategory());
|
.getCategory());
|
||||||
|
|
@ -61,7 +61,7 @@ public class SiteProxyProviderForm extends ProviderForm {
|
||||||
protected void processWidgets(PageState state, AtoZProvider provider) {
|
protected void processWidgets(PageState state, AtoZProvider provider) {
|
||||||
super.processWidgets(state, provider);
|
super.processWidgets(state, provider);
|
||||||
|
|
||||||
AtoZSiteProxyProvider siteProxyProvider = (AtoZSiteProxyProvider) provider;
|
SiteProxyProvider siteProxyProvider = (SiteProxyProvider) provider;
|
||||||
|
|
||||||
siteProxyProvider.setCategory(m_category_picker.getCategory(state));
|
siteProxyProvider.setCategory(m_category_picker.getCategory(state));
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -20,13 +20,13 @@ model com.arsdigita.atoz;
|
||||||
import com.arsdigita.categorization.Category;
|
import com.arsdigita.categorization.Category;
|
||||||
import com.arsdigita.cms.ContentType;
|
import com.arsdigita.cms.ContentType;
|
||||||
|
|
||||||
object type AtoZCategoryProvider extends AtoZProvider {
|
object type CategoryProvider extends AtoZProvider {
|
||||||
Boolean[1..1] isCompound = atoz_cat_provider.is_compound BIT;
|
Boolean[1..1] isCompound = atoz_cat_provider.is_compound BIT;
|
||||||
|
|
||||||
reference key (atoz_cat_provider.provider_id);
|
reference key (atoz_cat_provider.provider_id);
|
||||||
}
|
}
|
||||||
|
|
||||||
object type AtoZCategoryAlias {
|
object type CategoryAlias {
|
||||||
BigDecimal[1..1] id = atoz_cat_aliases.object_id;
|
BigDecimal[1..1] id = atoz_cat_aliases.object_id;
|
||||||
|
|
||||||
Category[1..1] category =
|
Category[1..1] category =
|
||||||
|
|
@ -39,7 +39,7 @@ object type AtoZCategoryAlias {
|
||||||
}
|
}
|
||||||
|
|
||||||
association {
|
association {
|
||||||
AtoZCategoryProvider[0..n] atozProvider1 = join cat_categories.category_id
|
CategoryProvider[0..n] atozProvider1 = join cat_categories.category_id
|
||||||
to atoz_cat_blacklist_map.category_id,
|
to atoz_cat_blacklist_map.category_id,
|
||||||
join atoz_cat_blacklist_map.provider_id
|
join atoz_cat_blacklist_map.provider_id
|
||||||
to atoz_cat_provider.provider_id;
|
to atoz_cat_provider.provider_id;
|
||||||
|
|
@ -50,16 +50,16 @@ association {
|
||||||
}
|
}
|
||||||
|
|
||||||
association {
|
association {
|
||||||
AtoZCategoryProvider[1..1] provider =
|
CategoryProvider[1..1] provider =
|
||||||
join atoz_cat_aliases.provider_id
|
join atoz_cat_aliases.provider_id
|
||||||
to atoz_cat_provider.provider_id;
|
to atoz_cat_provider.provider_id;
|
||||||
component AtoZCategoryAlias[0..n] aliases =
|
component CategoryAlias[0..n] aliases =
|
||||||
join atoz_cat_provider.provider_id
|
join atoz_cat_provider.provider_id
|
||||||
to atoz_cat_aliases.provider_id;
|
to atoz_cat_aliases.provider_id;
|
||||||
}
|
}
|
||||||
|
|
||||||
association {
|
association {
|
||||||
AtoZCategoryProvider[0..n] atozProvider3 = join content_types.type_id
|
CategoryProvider[0..n] atozProvider3 = join content_types.type_id
|
||||||
to atoz_cat_ct_blacklist_map.type_id,
|
to atoz_cat_ct_blacklist_map.type_id,
|
||||||
join atoz_cat_ct_blacklist_map.provider_id
|
join atoz_cat_ct_blacklist_map.provider_id
|
||||||
to atoz_cat_provider.provider_id;
|
to atoz_cat_provider.provider_id;
|
||||||
|
|
@ -20,8 +20,8 @@ model com.arsdigita.atoz;
|
||||||
import com.arsdigita.cms.ContentItem;
|
import com.arsdigita.cms.ContentItem;
|
||||||
import com.arsdigita.kernel.ACSObject;
|
import com.arsdigita.kernel.ACSObject;
|
||||||
|
|
||||||
object type AtoZItemAlias extends ACSObject {
|
object type ItemAlias extends ACSObject {
|
||||||
AtoZItemProvider[1..1] atozItemProvider = join atoz_item_aliases.provider_id
|
ItemProvider[1..1] itemProvider = join atoz_item_aliases.provider_id
|
||||||
to atoz_item_provider.provider_id;
|
to atoz_item_provider.provider_id;
|
||||||
ContentItem[1..1] contentItem = join atoz_item_aliases.item_id
|
ContentItem[1..1] contentItem = join atoz_item_aliases.item_id
|
||||||
to cms_items.item_id;
|
to cms_items.item_id;
|
||||||
|
|
@ -19,7 +19,7 @@ model com.arsdigita.atoz;
|
||||||
|
|
||||||
import com.arsdigita.categorization.Category;
|
import com.arsdigita.categorization.Category;
|
||||||
|
|
||||||
object type AtoZItemProvider extends AtoZProvider {
|
object type ItemProvider extends AtoZProvider {
|
||||||
Category[1..1] category = join atoz_item_provider.category_id to
|
Category[1..1] category = join atoz_item_provider.category_id to
|
||||||
cat_categories.category_id;
|
cat_categories.category_id;
|
||||||
String[0..1] loadPaths = atoz_item_provider.load_paths VARCHAR(200);
|
String[0..1] loadPaths = atoz_item_provider.load_paths VARCHAR(200);
|
||||||
|
|
@ -14,9 +14,10 @@
|
||||||
</xrd:adapter>
|
</xrd:adapter>
|
||||||
</xrd:context>
|
</xrd:context>
|
||||||
|
|
||||||
|
|
||||||
<xrd:context name="com.arsdigita.atoz.ui.admin.ProviderDetails">
|
<xrd:context name="com.arsdigita.atoz.ui.admin.ProviderDetails">
|
||||||
|
|
||||||
<xrd:adapter objectType="com.arsdigita.atoz.AtoZCategoryProvider">
|
<xrd:adapter objectType="com.arsdigita.atoz.CategoryProvider">
|
||||||
<xrd:attributes rule="exclude">
|
<xrd:attributes rule="exclude">
|
||||||
<xrd:property name="/object/id"/>
|
<xrd:property name="/object/id"/>
|
||||||
<xrd:property name="/object/defaultDomainClass"/>
|
<xrd:property name="/object/defaultDomainClass"/>
|
||||||
|
|
@ -42,7 +43,7 @@
|
||||||
</xrd:attributes>
|
</xrd:attributes>
|
||||||
</xrd:adapter>
|
</xrd:adapter>
|
||||||
-->
|
-->
|
||||||
<xrd:adapter objectType="com.arsdigita.atoz.AtoZItemProvider">
|
<xrd:adapter objectType="com.arsdigita.atoz.ItemProvider">
|
||||||
<xrd:attributes rule="exclude">
|
<xrd:attributes rule="exclude">
|
||||||
<xrd:property name="/object/id"/>
|
<xrd:property name="/object/id"/>
|
||||||
<xrd:property name="/object/defaultDomainClass"/>
|
<xrd:property name="/object/defaultDomainClass"/>
|
||||||
|
|
@ -106,7 +107,7 @@
|
||||||
</xrd:attributes>
|
</xrd:attributes>
|
||||||
</xrd:adapter>
|
</xrd:adapter>
|
||||||
|
|
||||||
<xrd:adapter objectType="com.arsdigita.atoz.AtoZCategoryAlias">
|
<xrd:adapter objectType="com.arsdigita.atoz.CategoryAlias">
|
||||||
<xrd:attributes rule="exclude">
|
<xrd:attributes rule="exclude">
|
||||||
<xrd:property name="/object/id"/>
|
<xrd:property name="/object/id"/>
|
||||||
<xrd:property name="/object/objectType"/>
|
<xrd:property name="/object/objectType"/>
|
||||||
|
|
@ -128,7 +129,7 @@
|
||||||
</xrd:attributes>
|
</xrd:attributes>
|
||||||
</xrd:adapter>
|
</xrd:adapter>
|
||||||
|
|
||||||
<xrd:adapter objectType="com.arsdigita.atoz.AtoZItemAlias">
|
<xrd:adapter objectType="com.arsdigita.atoz.ItemAlias">
|
||||||
<xrd:attributes rule="exclude">
|
<xrd:attributes rule="exclude">
|
||||||
<!--
|
<!--
|
||||||
<xrd:property name="/object/id"/>
|
<xrd:property name="/object/id"/>
|
||||||
|
|
|
||||||
|
|
@ -24,7 +24,7 @@ import com.arsdigita.util.parameter.ClassParameter;
|
||||||
import com.arsdigita.util.parameter.Parameter;
|
import com.arsdigita.util.parameter.Parameter;
|
||||||
import com.arsdigita.util.parameter.ResourceParameter;
|
import com.arsdigita.util.parameter.ResourceParameter;
|
||||||
|
|
||||||
import com.arsdigita.london.util.ui.ApplicationCategoryPicker;
|
import com.arsdigita.categorization.ui.ApplicationCategoryPicker;
|
||||||
|
|
||||||
import java.io.InputStream;
|
import java.io.InputStream;
|
||||||
|
|
||||||
|
|
@ -86,6 +86,9 @@ public class AtoZConfig extends AbstractConfig {
|
||||||
Parameter.OPTIONAL,
|
Parameter.OPTIONAL,
|
||||||
Boolean.FALSE);
|
Boolean.FALSE);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Constructor
|
||||||
|
*/
|
||||||
public AtoZConfig() {
|
public AtoZConfig() {
|
||||||
|
|
||||||
register(m_adapters);
|
register(m_adapters);
|
||||||
|
|
|
||||||
|
|
@ -1,19 +1,19 @@
|
||||||
com.arsdigita.london.atoz.traversal_adapters.title=XML renderer rules
|
com.arsdigita.atoz.traversal_adapters.title=XML renderer rules
|
||||||
com.arsdigita.london.atoz.traversal_adapters.purpose=Rules for configuring information in generated XML
|
com.arsdigita.atoz.traversal_adapters.purpose=Rules for configuring information in generated XML
|
||||||
com.arsdigita.london.atoz.traversal_adapters.format=[string]
|
com.arsdigita.atoz.traversal_adapters.format=[string]
|
||||||
com.arsdigita.london.atoz.traversal_adapters.example=/WEB-INF/resources/atoz-adapters.xml
|
com.arsdigita.atoz.traversal_adapters.example=/WEB-INF/resources/atoz-adapters.xml
|
||||||
|
|
||||||
com.arsdigita.london.atoz.root_category_picker.title=Root Category Picker
|
com.arsdigita.atoz.root_category_picker.title=Root Category Picker
|
||||||
com.arsdigita.london.atoz.root_category_picker.purpose=The UI widget for the Root Category Picker
|
com.arsdigita.atoz.root_category_picker.purpose=The UI widget for the Root Category Picker
|
||||||
com.arsdigita.london.atoz.root_category_picker.format=[class]
|
com.arsdigita.atoz.root_category_picker.format=[class]
|
||||||
com.arsdigita.london.atoz.root_category_picker.example=com.arsdigita.london.util.ui.ApplicationCategoryPicker
|
com.arsdigita.atoz.root_category_picker.example=com.arsdigita.london.util.ui.ApplicationCategoryPicker
|
||||||
|
|
||||||
com.arsdigita.london.atoz.use_subsite_specific_navigation_category.title=Make AtoZ use subsite-specific navigation categories
|
com.arsdigita.atoz.use_subsite_specific_navigation_category.title=Make AtoZ use subsite-specific navigation categories
|
||||||
com.arsdigita.london.atoz.use_subsite_specific_navigation_category.purpose=Set this to yes, and the AtoZ will use the subsite-specific navigation categories if you define *any* CategoryProvider
|
com.arsdigita.atoz.use_subsite_specific_navigation_category.purpose=Set this to yes, and the AtoZ will use the subsite-specific navigation categories if you define *any* CategoryProvider
|
||||||
com.arsdigita.london.atoz.use_subsite_specific_navigation_category.format=[boolean]
|
com.arsdigita.atoz.use_subsite_specific_navigation_category.format=[boolean]
|
||||||
com.arsdigita.london.atoz.use_subsite_specific_navigation_category.example=true
|
com.arsdigita.atoz.use_subsite_specific_navigation_category.example=true
|
||||||
|
|
||||||
com.arsdigita.london.atoz.filterCategoryProviders.title=To filter out category without published items
|
com.arsdigita.atoz.filterCategoryProviders.title=To filter out category without published items
|
||||||
com.arsdigita.london.atoz.filterCategoryProviders.purpose=if TRUE, the AtoZ category providers will only return Categories with published items
|
com.arsdigita.atoz.filterCategoryProviders.purpose=if TRUE, the AtoZ category providers will only return Categories with published items
|
||||||
com.arsdigita.london.atoz.filterCategoryProviders.format=[boolean]
|
com.arsdigita.atoz.filterCategoryProviders.format=[boolean]
|
||||||
com.arsdigita.london.atoz.filterCategoryProviders.example=false
|
com.arsdigita.atoz.filterCategoryProviders.example=false
|
||||||
|
|
@ -18,11 +18,6 @@
|
||||||
|
|
||||||
package com.arsdigita.atoz;
|
package com.arsdigita.atoz;
|
||||||
|
|
||||||
import java.math.BigDecimal;
|
|
||||||
import java.sql.SQLException;
|
|
||||||
|
|
||||||
import org.apache.log4j.Logger;
|
|
||||||
|
|
||||||
import com.arsdigita.categorization.Category;
|
import com.arsdigita.categorization.Category;
|
||||||
import com.arsdigita.db.Sequences;
|
import com.arsdigita.db.Sequences;
|
||||||
import com.arsdigita.domain.DomainObject;
|
import com.arsdigita.domain.DomainObject;
|
||||||
|
|
@ -30,15 +25,22 @@ import com.arsdigita.persistence.DataObject;
|
||||||
import com.arsdigita.persistence.OID;
|
import com.arsdigita.persistence.OID;
|
||||||
import com.arsdigita.persistence.PersistenceException;
|
import com.arsdigita.persistence.PersistenceException;
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
|
import java.sql.SQLException;
|
||||||
|
|
||||||
|
import org.apache.log4j.Logger;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
public class AtoZCategoryAlias extends DomainObject {
|
public class CategoryAlias extends DomainObject {
|
||||||
private static final Logger s_log = Logger.getLogger(AtoZCategoryAlias.class);
|
|
||||||
|
/** Creates a s_logging category with name = to the full name of class */
|
||||||
|
private static final Logger s_log = Logger.getLogger(CategoryAlias.class);
|
||||||
|
|
||||||
public static final String BASE_DATA_OBJECT_TYPE =
|
public static final String BASE_DATA_OBJECT_TYPE =
|
||||||
"com.arsdigita.atoz.AtoZCategoryAlias";
|
"com.arsdigita.atoz.CategoryAlias";
|
||||||
|
|
||||||
public static final String ID = "id";
|
public static final String ID = "id";
|
||||||
public static final String PROVIDER = "provider";
|
public static final String PROVIDER = "provider";
|
||||||
|
|
@ -46,19 +48,19 @@ public class AtoZCategoryAlias extends DomainObject {
|
||||||
public static final String LETTER = "letter";
|
public static final String LETTER = "letter";
|
||||||
public static final String TITLE = "title";
|
public static final String TITLE = "title";
|
||||||
|
|
||||||
public AtoZCategoryAlias() {
|
public CategoryAlias() {
|
||||||
this(BASE_DATA_OBJECT_TYPE);
|
this(BASE_DATA_OBJECT_TYPE);
|
||||||
}
|
}
|
||||||
|
|
||||||
protected AtoZCategoryAlias(String type) {
|
protected CategoryAlias(String type) {
|
||||||
super(type);
|
super(type);
|
||||||
}
|
}
|
||||||
|
|
||||||
public AtoZCategoryAlias(DataObject obj) {
|
public CategoryAlias(DataObject obj) {
|
||||||
super(obj);
|
super(obj);
|
||||||
}
|
}
|
||||||
|
|
||||||
public AtoZCategoryAlias(OID oid) {
|
public CategoryAlias(OID oid) {
|
||||||
super(oid);
|
super(oid);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -71,6 +73,7 @@ public class AtoZCategoryAlias extends DomainObject {
|
||||||
/**
|
/**
|
||||||
* Called from base class (DomainObject) constructors.
|
* Called from base class (DomainObject) constructors.
|
||||||
*/
|
*/
|
||||||
|
@Override
|
||||||
protected void initialize() {
|
protected void initialize() {
|
||||||
super.initialize();
|
super.initialize();
|
||||||
|
|
||||||
|
|
@ -78,8 +81,8 @@ public class AtoZCategoryAlias extends DomainObject {
|
||||||
set(ID, generateID());
|
set(ID, generateID());
|
||||||
}
|
}
|
||||||
|
|
||||||
public AtoZCategoryProvider getProvider() {
|
public CategoryProvider getProvider() {
|
||||||
return (AtoZCategoryProvider)get(PROVIDER);
|
return (CategoryProvider)get(PROVIDER);
|
||||||
}
|
}
|
||||||
|
|
||||||
public Category getCategory() {
|
public Category getCategory() {
|
||||||
|
|
@ -33,19 +33,19 @@ import java.util.ArrayList;
|
||||||
*
|
*
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
public class AtoZCategoryGenerator extends AtoZGeneratorAbstractImpl {
|
public class CategoryGenerator extends AtoZGeneratorAbstractImpl {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Constructor
|
* Constructor
|
||||||
*
|
*
|
||||||
* @param provider
|
* @param provider
|
||||||
*/
|
*/
|
||||||
public AtoZCategoryGenerator(AtoZCategoryProvider provider) {
|
public CategoryGenerator(CategoryProvider provider) {
|
||||||
super(provider);
|
super(provider);
|
||||||
}
|
}
|
||||||
|
|
||||||
public AtoZEntry[] getEntries(String letter) {
|
public AtoZEntry[] getEntries(String letter) {
|
||||||
AtoZCategoryProvider provider = (AtoZCategoryProvider) getProvider();
|
CategoryProvider provider = (CategoryProvider) getProvider();
|
||||||
|
|
||||||
DataQuery entries = provider.getAtomicEntries();
|
DataQuery entries = provider.getAtomicEntries();
|
||||||
Filter f = entries.addFilter("sortKey like :sortKey");
|
Filter f = entries.addFilter("sortKey like :sortKey");
|
||||||
|
|
@ -54,22 +54,28 @@ public class AtoZCategoryGenerator extends AtoZGeneratorAbstractImpl {
|
||||||
|
|
||||||
List l = new ArrayList();
|
List l = new ArrayList();
|
||||||
while (entries.next()) {
|
while (entries.next()) {
|
||||||
l.add(new AtoZCategoryAtomicEntry(new OID((String) entries
|
l.add(new CategoryAtomicEntry(new OID(
|
||||||
.get("objectType"), entries.get("id")), (String) entries
|
(String) entries.get("objectType"),
|
||||||
.get("title"), (String) entries.get("description")));
|
entries.get("id")),
|
||||||
|
(String) entries.get("title"),
|
||||||
|
(String) entries.get("description"))
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
return (AtoZEntry[]) l.toArray(new AtoZEntry[l.size()]);
|
return (AtoZEntry[]) l.toArray(new AtoZEntry[l.size()]);
|
||||||
}
|
}
|
||||||
|
|
||||||
private class AtoZCategoryAtomicEntry implements AtoZAtomicEntry {
|
/**
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
private class CategoryAtomicEntry implements AtoZAtomicEntry {
|
||||||
private OID m_oid;
|
private OID m_oid;
|
||||||
|
|
||||||
private String m_title;
|
private String m_title;
|
||||||
|
|
||||||
private String m_description;
|
private String m_description;
|
||||||
|
|
||||||
public AtoZCategoryAtomicEntry(OID oid, String title, String description) {
|
public CategoryAtomicEntry(OID oid, String title, String description) {
|
||||||
m_oid = oid;
|
m_oid = oid;
|
||||||
m_title = title;
|
m_title = title;
|
||||||
m_description = description;
|
m_description = description;
|
||||||
|
|
@ -38,14 +38,14 @@ import org.apache.log4j.Logger;
|
||||||
*
|
*
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
public class AtoZCategoryProvider extends AtoZProvider {
|
public class CategoryProvider extends AtoZProvider {
|
||||||
|
|
||||||
/** Private logger instance to assist debugging. */
|
/** Private logger instance to assist debugging. */
|
||||||
private static final Logger s_log =
|
private static final Logger s_log =
|
||||||
Logger.getLogger(AtoZCategoryProvider.class);
|
Logger.getLogger(CategoryProvider.class);
|
||||||
|
|
||||||
public static final String BASE_DATA_OBJECT_TYPE =
|
public static final String BASE_DATA_OBJECT_TYPE =
|
||||||
"com.arsdigita.atoz.AtoZCategoryProvider";
|
"com.arsdigita.atoz.CategoryProvider";
|
||||||
|
|
||||||
public static final String IS_COMPOUND = "isCompound";
|
public static final String IS_COMPOUND = "isCompound";
|
||||||
|
|
||||||
|
|
@ -77,7 +77,7 @@ public class AtoZCategoryProvider extends AtoZProvider {
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
public AtoZCategoryProvider() {
|
public CategoryProvider() {
|
||||||
this(BASE_DATA_OBJECT_TYPE);
|
this(BASE_DATA_OBJECT_TYPE);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -85,15 +85,15 @@ public class AtoZCategoryProvider extends AtoZProvider {
|
||||||
* Constructor
|
* Constructor
|
||||||
* @param type
|
* @param type
|
||||||
*/
|
*/
|
||||||
protected AtoZCategoryProvider(String type) {
|
protected CategoryProvider(String type) {
|
||||||
super(type);
|
super(type);
|
||||||
}
|
}
|
||||||
|
|
||||||
public AtoZCategoryProvider(DataObject obj) {
|
public CategoryProvider(DataObject obj) {
|
||||||
super(obj);
|
super(obj);
|
||||||
}
|
}
|
||||||
|
|
||||||
public AtoZCategoryProvider(OID oid) {
|
public CategoryProvider(OID oid) {
|
||||||
super(oid);
|
super(oid);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -104,9 +104,17 @@ public class AtoZCategoryProvider extends AtoZProvider {
|
||||||
super.delete();
|
super.delete();
|
||||||
}
|
}
|
||||||
|
|
||||||
public static AtoZCategoryProvider create(String title, String description,
|
/**
|
||||||
|
*
|
||||||
|
* @param title
|
||||||
|
* @param description
|
||||||
|
* @param isCompound
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
public static CategoryProvider create(String title,
|
||||||
|
String description,
|
||||||
boolean isCompound) {
|
boolean isCompound) {
|
||||||
AtoZCategoryProvider provider = new AtoZCategoryProvider();
|
CategoryProvider provider = new CategoryProvider();
|
||||||
provider.setup(title, description, isCompound);
|
provider.setup(title, description, isCompound);
|
||||||
return provider;
|
return provider;
|
||||||
}
|
}
|
||||||
|
|
@ -125,12 +133,12 @@ public class AtoZCategoryProvider extends AtoZProvider {
|
||||||
}
|
}
|
||||||
|
|
||||||
public void addAlias(Category cat, String letter, String title) {
|
public void addAlias(Category cat, String letter, String title) {
|
||||||
AtoZCategoryAlias alias = new AtoZCategoryAlias();
|
CategoryAlias alias = new CategoryAlias();
|
||||||
alias.setup(cat, letter, title);
|
alias.setup(cat, letter, title);
|
||||||
add(ALIASES, alias);
|
add(ALIASES, alias);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void removeAlias(AtoZCategoryAlias alias) {
|
public void removeAlias(CategoryAlias alias) {
|
||||||
remove(ALIASES, alias);
|
remove(ALIASES, alias);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -212,7 +220,7 @@ public class AtoZCategoryProvider extends AtoZProvider {
|
||||||
}
|
}
|
||||||
|
|
||||||
public AtoZGenerator getGenerator() {
|
public AtoZGenerator getGenerator() {
|
||||||
return new AtoZCategoryGenerator(this);
|
return new CategoryGenerator(this);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void addContentTypeBlock(ContentType contentType) {
|
public void addContentTypeBlock(ContentType contentType) {
|
||||||
|
|
@ -81,10 +81,10 @@ public class Initializer extends CompoundInitializer {
|
||||||
|
|
||||||
|
|
||||||
DomainObjectFactory f = evt.getFactory();
|
DomainObjectFactory f = evt.getFactory();
|
||||||
f.registerInstantiator(AtoZCategoryAlias.BASE_DATA_OBJECT_TYPE,
|
f.registerInstantiator(CategoryAlias.BASE_DATA_OBJECT_TYPE,
|
||||||
new DomainObjectInstantiator() {
|
new DomainObjectInstantiator() {
|
||||||
protected DomainObject doNewInstance(DataObject dataObject) {
|
protected DomainObject doNewInstance(DataObject dataObject) {
|
||||||
return new AtoZCategoryAlias(dataObject);
|
return new CategoryAlias(dataObject);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
@ -96,14 +96,14 @@ public class Initializer extends CompoundInitializer {
|
||||||
AtoZ.registerProviderType(
|
AtoZ.registerProviderType(
|
||||||
new AtoZProviderType("Item Provider",
|
new AtoZProviderType("Item Provider",
|
||||||
"Provides an item A-Z",
|
"Provides an item A-Z",
|
||||||
AtoZItemProvider.class,
|
ItemProvider.class,
|
||||||
ItemProviderForm.class,
|
ItemProviderForm.class,
|
||||||
ItemProviderAdmin.class));
|
ItemProviderAdmin.class));
|
||||||
|
|
||||||
AtoZ.registerProviderType(
|
AtoZ.registerProviderType(
|
||||||
new AtoZProviderType("Category Provider",
|
new AtoZProviderType("Category Provider",
|
||||||
"Provides a category A-Z",
|
"Provides a category A-Z",
|
||||||
AtoZCategoryProvider.class,
|
CategoryProvider.class,
|
||||||
CategoryProviderForm.class,
|
CategoryProviderForm.class,
|
||||||
CategoryProviderAdmin.class));
|
CategoryProviderAdmin.class));
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -27,40 +27,60 @@ import com.arsdigita.util.Assert;
|
||||||
import org.apache.log4j.Logger;
|
import org.apache.log4j.Logger;
|
||||||
|
|
||||||
|
|
||||||
public class AtoZItemAlias extends ACSObject {
|
public class ItemAlias extends ACSObject {
|
||||||
|
|
||||||
private static final Logger s_log = Logger.getLogger(AtoZItemAlias.class);
|
private static final Logger s_log = Logger.getLogger(ItemAlias.class);
|
||||||
|
|
||||||
public static final String BASE_DATA_OBJECT_TYPE = AtoZItemAlias.class.getName();
|
public static final String BASE_DATA_OBJECT_TYPE = ItemAlias.class.getName();
|
||||||
|
|
||||||
public static final String TITLE = "title";
|
public static final String TITLE = "title";
|
||||||
public static final String LETTER = "letter";
|
public static final String LETTER = "letter";
|
||||||
public static final String ATOZ_ITEM_PROVIDER = "atozItemProvider";
|
public static final String ITEM_PROVIDER = "itemProvider";
|
||||||
public static final String CONTENT_ITEM = "contentItem";
|
public static final String CONTENT_ITEM = "contentItem";
|
||||||
|
|
||||||
public AtoZItemAlias() {
|
/**
|
||||||
|
* Constructor
|
||||||
|
*/
|
||||||
|
public ItemAlias() {
|
||||||
this(BASE_DATA_OBJECT_TYPE);
|
this(BASE_DATA_OBJECT_TYPE);
|
||||||
}
|
}
|
||||||
|
|
||||||
public AtoZItemAlias(String type) {
|
/**
|
||||||
|
* Constructor
|
||||||
|
*/
|
||||||
|
public ItemAlias(String type) {
|
||||||
super(type);
|
super(type);
|
||||||
}
|
}
|
||||||
|
|
||||||
public AtoZItemAlias(DataObject obj) {
|
/**
|
||||||
|
* Constructor
|
||||||
|
*/
|
||||||
|
public ItemAlias(DataObject obj) {
|
||||||
super(obj);
|
super(obj);
|
||||||
}
|
}
|
||||||
|
|
||||||
public AtoZItemAlias(OID oid) {
|
/**
|
||||||
|
* Constructor
|
||||||
|
* @param oid
|
||||||
|
*/
|
||||||
|
public ItemAlias(OID oid) {
|
||||||
super(oid);
|
super(oid);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @param title
|
||||||
|
* @param letter
|
||||||
|
* @param itemProvider
|
||||||
|
* @param contentItem
|
||||||
|
*/
|
||||||
protected void setup(String title,
|
protected void setup(String title,
|
||||||
String letter,
|
String letter,
|
||||||
AtoZItemProvider atozItemProvider,
|
ItemProvider itemProvider,
|
||||||
ContentItem contentItem) {
|
ContentItem contentItem) {
|
||||||
setTitle(title);
|
setTitle(title);
|
||||||
setLetter(letter);
|
setLetter(letter);
|
||||||
setAtoZItemProvider(atozItemProvider);
|
setItemProvider(itemProvider);
|
||||||
setContentItem(contentItem);
|
setContentItem(contentItem);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -81,16 +101,16 @@ public class AtoZItemAlias extends ACSObject {
|
||||||
set(LETTER, letter);
|
set(LETTER, letter);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setAtoZItemProvider(AtoZItemProvider atozItemProvider) {
|
public void setItemProvider(ItemProvider itemProvider) {
|
||||||
Assert.exists(atozItemProvider, AtoZItemProvider.class);
|
Assert.exists(itemProvider, ItemProvider.class);
|
||||||
set(ATOZ_ITEM_PROVIDER, atozItemProvider );
|
set(ITEM_PROVIDER, itemProvider );
|
||||||
}
|
}
|
||||||
|
|
||||||
public AtoZItemProvider getAtoZItemProvider() {
|
public ItemProvider getItemProvider() {
|
||||||
if (get(ATOZ_ITEM_PROVIDER) == null) {
|
if (get(ITEM_PROVIDER) == null) {
|
||||||
return null;
|
return null;
|
||||||
} else {
|
} else {
|
||||||
return new AtoZItemProvider((DataObject) get(ATOZ_ITEM_PROVIDER));
|
return new ItemProvider((DataObject) get(ITEM_PROVIDER));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -34,14 +34,18 @@ import java.math.BigDecimal;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
public class AtoZItemGenerator extends AtoZGeneratorAbstractImpl {
|
/**
|
||||||
|
*
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
public class ItemGenerator extends AtoZGeneratorAbstractImpl {
|
||||||
|
|
||||||
public AtoZItemGenerator(AtoZItemProvider provider) {
|
public ItemGenerator(ItemProvider provider) {
|
||||||
super(provider);
|
super(provider);
|
||||||
}
|
}
|
||||||
|
|
||||||
public AtoZEntry[] getEntries(String letter) {
|
public AtoZEntry[] getEntries(String letter) {
|
||||||
AtoZItemProvider provider = (AtoZItemProvider) getProvider();
|
ItemProvider provider = (ItemProvider) getProvider();
|
||||||
|
|
||||||
DataQuery entries = provider.getAtomicEntries();
|
DataQuery entries = provider.getAtomicEntries();
|
||||||
Filter f = entries.addFilter("sortKey like :sortKey");
|
Filter f = entries.addFilter("sortKey like :sortKey");
|
||||||
|
|
@ -82,7 +86,7 @@ public class AtoZItemGenerator extends AtoZGeneratorAbstractImpl {
|
||||||
if (title.equals("")) {
|
if (title.equals("")) {
|
||||||
title = live.getDisplayName();
|
title = live.getDisplayName();
|
||||||
}
|
}
|
||||||
l.add(new AtoZItemAtomicEntry(live.getOID(), title,
|
l.add(new ItemAtomicEntry(live.getOID(), title,
|
||||||
description));
|
description));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -92,14 +96,18 @@ public class AtoZItemGenerator extends AtoZGeneratorAbstractImpl {
|
||||||
return (AtoZEntry[]) l.toArray(new AtoZEntry[l.size()]);
|
return (AtoZEntry[]) l.toArray(new AtoZEntry[l.size()]);
|
||||||
}
|
}
|
||||||
|
|
||||||
private class AtoZItemAtomicEntry implements AtoZAtomicEntry {
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
private class ItemAtomicEntry implements AtoZAtomicEntry {
|
||||||
private OID m_oid;
|
private OID m_oid;
|
||||||
|
|
||||||
private String m_title;
|
private String m_title;
|
||||||
|
|
||||||
private String m_description;
|
private String m_description;
|
||||||
|
|
||||||
public AtoZItemAtomicEntry(OID oid, String title, String description) {
|
public ItemAtomicEntry(OID oid, String title, String description) {
|
||||||
m_oid = oid;
|
m_oid = oid;
|
||||||
m_title = title;
|
m_title = title;
|
||||||
m_description = description;
|
m_description = description;
|
||||||
|
|
@ -28,10 +28,14 @@ import com.arsdigita.util.Assert;
|
||||||
import com.arsdigita.categorization.Category;
|
import com.arsdigita.categorization.Category;
|
||||||
|
|
||||||
|
|
||||||
public class AtoZItemProvider extends AtoZProvider {
|
/**
|
||||||
|
*
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
public class ItemProvider extends AtoZProvider {
|
||||||
|
|
||||||
public static final String BASE_DATA_OBJECT_TYPE =
|
public static final String BASE_DATA_OBJECT_TYPE =
|
||||||
"com.arsdigita.atoz.AtoZItemProvider";
|
"com.arsdigita.atoz.ItemProvider";
|
||||||
|
|
||||||
public static final String CATEGORY = "category";
|
public static final String CATEGORY = "category";
|
||||||
public static final String LOAD_PATHS = "loadPaths";
|
public static final String LOAD_PATHS = "loadPaths";
|
||||||
|
|
@ -39,26 +43,38 @@ public class AtoZItemProvider extends AtoZProvider {
|
||||||
public static final String ATOMIC_ENTRIES =
|
public static final String ATOMIC_ENTRIES =
|
||||||
"com.arsdigita.atoz.getAtomicItemEntries";
|
"com.arsdigita.atoz.getAtomicItemEntries";
|
||||||
|
|
||||||
public AtoZItemProvider() {
|
/**
|
||||||
|
* Constructor
|
||||||
|
*/
|
||||||
|
public ItemProvider() {
|
||||||
this(BASE_DATA_OBJECT_TYPE);
|
this(BASE_DATA_OBJECT_TYPE);
|
||||||
}
|
}
|
||||||
|
|
||||||
protected AtoZItemProvider(String type) {
|
/**
|
||||||
|
* Constructor
|
||||||
|
*/
|
||||||
|
protected ItemProvider(String type) {
|
||||||
super(type);
|
super(type);
|
||||||
}
|
}
|
||||||
|
|
||||||
public AtoZItemProvider(DataObject obj) {
|
/**
|
||||||
|
* Constructor
|
||||||
|
*/
|
||||||
|
public ItemProvider(DataObject obj) {
|
||||||
super(obj);
|
super(obj);
|
||||||
}
|
}
|
||||||
|
|
||||||
public AtoZItemProvider(OID oid) {
|
/**
|
||||||
|
* Constructor
|
||||||
|
*/
|
||||||
|
public ItemProvider(OID oid) {
|
||||||
super(oid);
|
super(oid);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static AtoZItemProvider create(String title,
|
public static ItemProvider create(String title,
|
||||||
String description,
|
String description,
|
||||||
Category category) {
|
Category category) {
|
||||||
AtoZItemProvider provider = new AtoZItemProvider();
|
ItemProvider provider = new ItemProvider();
|
||||||
provider.setup(title, description, category);
|
provider.setup(title, description, category);
|
||||||
return provider;
|
return provider;
|
||||||
}
|
}
|
||||||
|
|
@ -87,24 +103,40 @@ public class AtoZItemProvider extends AtoZProvider {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
public DomainCollection getAliases() {
|
public DomainCollection getAliases() {
|
||||||
DomainCollection aliases = new DomainCollection(SessionManager.getSession()
|
DomainCollection aliases = new DomainCollection(SessionManager.getSession()
|
||||||
.retrieve(AtoZItemAlias.BASE_DATA_OBJECT_TYPE));
|
.retrieve(ItemAlias.BASE_DATA_OBJECT_TYPE));
|
||||||
aliases.addFilter("atozItemProvider = :providerId").set("providerId", getID());
|
aliases.addFilter("itemProvider = :providerId").set("providerId", getID());
|
||||||
aliases.addOrder("title");
|
aliases.addOrder("title");
|
||||||
return aliases;
|
return aliases;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @param loadPaths
|
||||||
|
*/
|
||||||
public void setLoadPaths( String loadPaths ) {
|
public void setLoadPaths( String loadPaths ) {
|
||||||
set( LOAD_PATHS, loadPaths );
|
set( LOAD_PATHS, loadPaths );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
public String getLoadPaths() {
|
public String getLoadPaths() {
|
||||||
return (String) get( LOAD_PATHS );
|
return (String) get( LOAD_PATHS );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
public AtoZGenerator getGenerator() {
|
public AtoZGenerator getGenerator() {
|
||||||
return new AtoZItemGenerator(this);
|
return new ItemGenerator(this);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
@ -16,8 +16,9 @@
|
||||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||||
*/
|
*/
|
||||||
|
|
||||||
package com.arsdigita.atoz;
|
package com.arsdigita.atoz.tools;
|
||||||
|
|
||||||
|
import com.arsdigita.atoz.AtoZ;
|
||||||
import com.arsdigita.domain.DomainObject;
|
import com.arsdigita.domain.DomainObject;
|
||||||
import com.arsdigita.domain.DomainObjectFactory;
|
import com.arsdigita.domain.DomainObjectFactory;
|
||||||
import com.arsdigita.domain.DomainObjectInstantiator;
|
import com.arsdigita.domain.DomainObjectInstantiator;
|
||||||
|
|
@ -38,14 +39,15 @@ import org.apache.log4j.Logger;
|
||||||
* Usually Loader creates a (default) application instance.
|
* Usually Loader creates a (default) application instance.
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
public class AddAtoZ extends Program {
|
public class AtoZCreator extends Program {
|
||||||
|
|
||||||
private static final Logger LOG = Logger.getLogger(AddAtoZ.class);
|
/** A logger instance to assist debugging. */
|
||||||
|
private static final Logger s_log = Logger.getLogger(AtoZCreator.class);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Default Constructor
|
* Default Constructor
|
||||||
*/
|
*/
|
||||||
public AddAtoZ() {
|
public AtoZCreator() {
|
||||||
super("Add AtoZ instance", "1.0.0", "URL-FRAGMENT TITLE");
|
super("Add AtoZ instance", "1.0.0", "URL-FRAGMENT TITLE");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -105,7 +107,7 @@ public class AddAtoZ extends Program {
|
||||||
* @param args
|
* @param args
|
||||||
*/
|
*/
|
||||||
public static void main(String[] args) {
|
public static void main(String[] args) {
|
||||||
new AddAtoZ().run(args);
|
new AtoZCreator().run(args);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
@ -18,13 +18,13 @@
|
||||||
|
|
||||||
package com.arsdigita.atoz.ui.admin;
|
package com.arsdigita.atoz.ui.admin;
|
||||||
|
|
||||||
import com.arsdigita.kernel.ui.ACSObjectSelectionModel;
|
|
||||||
import com.arsdigita.bebop.event.ActionListener;
|
import com.arsdigita.bebop.event.ActionListener;
|
||||||
import com.arsdigita.bebop.event.ActionEvent;
|
import com.arsdigita.bebop.event.ActionEvent;
|
||||||
import com.arsdigita.bebop.PageState;
|
import com.arsdigita.bebop.PageState;
|
||||||
import com.arsdigita.bebop.ActionLink;
|
import com.arsdigita.bebop.ActionLink;
|
||||||
import com.arsdigita.bebop.Page;
|
import com.arsdigita.bebop.Page;
|
||||||
import com.arsdigita.bebop.Component;
|
import com.arsdigita.bebop.Component;
|
||||||
|
import com.arsdigita.kernel.ui.ACSObjectSelectionModel;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
|
|
@ -56,6 +56,10 @@ public class CategoryProviderAdmin extends ProviderAdmin {
|
||||||
|
|
||||||
private ActionLink m_addAlias;
|
private ActionLink m_addAlias;
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @param provider
|
||||||
|
*/
|
||||||
public CategoryProviderAdmin(ACSObjectSelectionModel provider) {
|
public CategoryProviderAdmin(ACSObjectSelectionModel provider) {
|
||||||
super("categoryProviderAdmin", provider);
|
super("categoryProviderAdmin", provider);
|
||||||
|
|
||||||
|
|
@ -108,6 +112,7 @@ public class CategoryProviderAdmin extends ProviderAdmin {
|
||||||
m_aliasForm.addCompletionListener(new CategoryAliasComplete());
|
m_aliasForm.addCompletionListener(new CategoryAliasComplete());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public void register(Page p) {
|
public void register(Page p) {
|
||||||
super.register(p);
|
super.register(p);
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -35,7 +35,7 @@ import com.arsdigita.bebop.parameters.NotNullValidationListener;
|
||||||
import com.arsdigita.bebop.parameters.StringInRangeValidationListener;
|
import com.arsdigita.bebop.parameters.StringInRangeValidationListener;
|
||||||
import com.arsdigita.categorization.Category;
|
import com.arsdigita.categorization.Category;
|
||||||
import com.arsdigita.kernel.ui.ACSObjectSelectionModel;
|
import com.arsdigita.kernel.ui.ACSObjectSelectionModel;
|
||||||
import com.arsdigita.atoz.AtoZCategoryProvider;
|
import com.arsdigita.atoz.CategoryProvider;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
|
|
@ -111,7 +111,7 @@ public class CategoryProviderAliasForm extends Form {
|
||||||
throws FormProcessException {
|
throws FormProcessException {
|
||||||
PageState state = e.getPageState();
|
PageState state = e.getPageState();
|
||||||
|
|
||||||
AtoZCategoryProvider provider = (AtoZCategoryProvider)m_provider
|
CategoryProvider provider = (CategoryProvider)m_provider
|
||||||
.getSelectedObject(state);
|
.getSelectedObject(state);
|
||||||
|
|
||||||
Category cat = new Category(((BigDecimal[])m_termWidget.getValue(state))[0]);
|
Category cat = new Category(((BigDecimal[])m_termWidget.getValue(state))[0]);
|
||||||
|
|
|
||||||
|
|
@ -24,8 +24,8 @@ import com.arsdigita.bebop.SimpleContainer;
|
||||||
import com.arsdigita.bebop.PageState;
|
import com.arsdigita.bebop.PageState;
|
||||||
|
|
||||||
import com.arsdigita.atoz.AtoZ;
|
import com.arsdigita.atoz.AtoZ;
|
||||||
import com.arsdigita.atoz.AtoZCategoryAlias;
|
import com.arsdigita.atoz.CategoryAlias;
|
||||||
import com.arsdigita.atoz.AtoZCategoryProvider;
|
import com.arsdigita.atoz.CategoryProvider;
|
||||||
|
|
||||||
import com.arsdigita.domain.DomainObjectXMLRenderer;
|
import com.arsdigita.domain.DomainObjectXMLRenderer;
|
||||||
import com.arsdigita.domain.DomainCollection;
|
import com.arsdigita.domain.DomainCollection;
|
||||||
|
|
@ -55,10 +55,10 @@ public class CategoryProviderAliasList extends SimpleContainer {
|
||||||
String value = state.getControlEventValue();
|
String value = state.getControlEventValue();
|
||||||
|
|
||||||
if (DELETE.equals(key)) {
|
if (DELETE.equals(key)) {
|
||||||
AtoZCategoryAlias alias = (AtoZCategoryAlias)DomainObjectFactory
|
CategoryAlias alias = (CategoryAlias)DomainObjectFactory
|
||||||
.newInstance(OID.valueOf(value));
|
.newInstance(OID.valueOf(value));
|
||||||
|
|
||||||
AtoZCategoryProvider provider = (AtoZCategoryProvider)
|
CategoryProvider provider = (CategoryProvider)
|
||||||
m_provider.getSelectedObject(state);
|
m_provider.getSelectedObject(state);
|
||||||
provider.removeAlias(alias);
|
provider.removeAlias(alias);
|
||||||
}
|
}
|
||||||
|
|
@ -70,12 +70,12 @@ public class CategoryProviderAliasList extends SimpleContainer {
|
||||||
Element content = AtoZ.newElement("categoryProviderAliasList");
|
Element content = AtoZ.newElement("categoryProviderAliasList");
|
||||||
exportAttributes(content);
|
exportAttributes(content);
|
||||||
|
|
||||||
AtoZCategoryProvider provider = (AtoZCategoryProvider)
|
CategoryProvider provider = (CategoryProvider)
|
||||||
m_provider.getSelectedObject(state);
|
m_provider.getSelectedObject(state);
|
||||||
|
|
||||||
DomainCollection entries = provider.getAliases();
|
DomainCollection entries = provider.getAliases();
|
||||||
while (entries.next()) {
|
while (entries.next()) {
|
||||||
AtoZCategoryAlias alias = (AtoZCategoryAlias)entries.getDomainObject();
|
CategoryAlias alias = (CategoryAlias)entries.getDomainObject();
|
||||||
Element el = AtoZ.newElement("categoryProviderAlias");
|
Element el = AtoZ.newElement("categoryProviderAlias");
|
||||||
el.addAttribute("letter", XML.format(alias.getLetter()));
|
el.addAttribute("letter", XML.format(alias.getLetter()));
|
||||||
el.addAttribute("title", XML.format(alias.getTitle()));
|
el.addAttribute("title", XML.format(alias.getTitle()));
|
||||||
|
|
|
||||||
|
|
@ -24,7 +24,7 @@ import com.arsdigita.bebop.SimpleContainer;
|
||||||
import com.arsdigita.bebop.PageState;
|
import com.arsdigita.bebop.PageState;
|
||||||
|
|
||||||
import com.arsdigita.atoz.AtoZ;
|
import com.arsdigita.atoz.AtoZ;
|
||||||
import com.arsdigita.atoz.AtoZCategoryProvider;
|
import com.arsdigita.atoz.CategoryProvider;
|
||||||
|
|
||||||
import com.arsdigita.domain.DomainObjectXMLRenderer;
|
import com.arsdigita.domain.DomainObjectXMLRenderer;
|
||||||
import com.arsdigita.domain.DomainCollection;
|
import com.arsdigita.domain.DomainCollection;
|
||||||
|
|
@ -59,7 +59,7 @@ public class CategoryProviderBlackList extends SimpleContainer {
|
||||||
Category cat = (Category)DomainObjectFactory
|
Category cat = (Category)DomainObjectFactory
|
||||||
.newInstance(OID.valueOf(value));
|
.newInstance(OID.valueOf(value));
|
||||||
|
|
||||||
AtoZCategoryProvider provider = (AtoZCategoryProvider)
|
CategoryProvider provider = (CategoryProvider)
|
||||||
m_provider.getSelectedObject(state);
|
m_provider.getSelectedObject(state);
|
||||||
provider.removeBlock(cat);
|
provider.removeBlock(cat);
|
||||||
}
|
}
|
||||||
|
|
@ -72,7 +72,7 @@ public class CategoryProviderBlackList extends SimpleContainer {
|
||||||
Element content = AtoZ.newElement("categoryProviderBlackList");
|
Element content = AtoZ.newElement("categoryProviderBlackList");
|
||||||
exportAttributes(content);
|
exportAttributes(content);
|
||||||
|
|
||||||
AtoZCategoryProvider provider = (AtoZCategoryProvider)
|
CategoryProvider provider = (CategoryProvider)
|
||||||
m_provider.getSelectedObject(state);
|
m_provider.getSelectedObject(state);
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -18,7 +18,7 @@
|
||||||
|
|
||||||
package com.arsdigita.atoz.ui.admin;
|
package com.arsdigita.atoz.ui.admin;
|
||||||
|
|
||||||
import com.arsdigita.atoz.AtoZCategoryProvider;
|
import com.arsdigita.atoz.CategoryProvider;
|
||||||
import com.arsdigita.categorization.ui.ObjectCategoryPicker;
|
import com.arsdigita.categorization.ui.ObjectCategoryPicker;
|
||||||
|
|
||||||
import com.arsdigita.bebop.PageState;
|
import com.arsdigita.bebop.PageState;
|
||||||
|
|
@ -97,7 +97,7 @@ public class CategoryProviderBlockForm extends Form {
|
||||||
throws FormProcessException {
|
throws FormProcessException {
|
||||||
PageState state = e.getPageState();
|
PageState state = e.getPageState();
|
||||||
|
|
||||||
AtoZCategoryProvider provider = (AtoZCategoryProvider)m_provider
|
CategoryProvider provider = (CategoryProvider)m_provider
|
||||||
.getSelectedObject(state);
|
.getSelectedObject(state);
|
||||||
|
|
||||||
Category cat = m_category.getCategory(state);
|
Category cat = m_category.getCategory(state);
|
||||||
|
|
|
||||||
|
|
@ -30,7 +30,7 @@ import com.arsdigita.domain.DomainObjectFactory;
|
||||||
import com.arsdigita.domain.DomainObjectXMLRenderer;
|
import com.arsdigita.domain.DomainObjectXMLRenderer;
|
||||||
import com.arsdigita.kernel.ui.ACSObjectSelectionModel;
|
import com.arsdigita.kernel.ui.ACSObjectSelectionModel;
|
||||||
import com.arsdigita.atoz.AtoZ;
|
import com.arsdigita.atoz.AtoZ;
|
||||||
import com.arsdigita.atoz.AtoZCategoryProvider;
|
import com.arsdigita.atoz.CategoryProvider;
|
||||||
import com.arsdigita.persistence.OID;
|
import com.arsdigita.persistence.OID;
|
||||||
import com.arsdigita.util.UncheckedWrapperException;
|
import com.arsdigita.util.UncheckedWrapperException;
|
||||||
import com.arsdigita.xml.Element;
|
import com.arsdigita.xml.Element;
|
||||||
|
|
@ -53,7 +53,7 @@ public class CategoryProviderContentTypeBlacklist extends SimpleContainer {
|
||||||
ContentType contentType = (ContentType) DomainObjectFactory
|
ContentType contentType = (ContentType) DomainObjectFactory
|
||||||
.newInstance(OID.valueOf(value));
|
.newInstance(OID.valueOf(value));
|
||||||
|
|
||||||
AtoZCategoryProvider provider = (AtoZCategoryProvider) m_provider
|
CategoryProvider provider = (CategoryProvider) m_provider
|
||||||
.getSelectedObject(state);
|
.getSelectedObject(state);
|
||||||
provider.removeContentTypeBlock(contentType);
|
provider.removeContentTypeBlock(contentType);
|
||||||
}
|
}
|
||||||
|
|
@ -64,7 +64,7 @@ public class CategoryProviderContentTypeBlacklist extends SimpleContainer {
|
||||||
.newElement("categoryProviderContentTypeBlackList");
|
.newElement("categoryProviderContentTypeBlackList");
|
||||||
exportAttributes(content);
|
exportAttributes(content);
|
||||||
|
|
||||||
AtoZCategoryProvider provider = (AtoZCategoryProvider) m_provider
|
CategoryProvider provider = (CategoryProvider) m_provider
|
||||||
.getSelectedObject(state);
|
.getSelectedObject(state);
|
||||||
|
|
||||||
DomainCollection entries = provider.getContentTypeBlackList();
|
DomainCollection entries = provider.getContentTypeBlackList();
|
||||||
|
|
|
||||||
|
|
@ -41,7 +41,7 @@ import com.arsdigita.cms.ContentType;
|
||||||
import com.arsdigita.cms.ContentTypeCollection;
|
import com.arsdigita.cms.ContentTypeCollection;
|
||||||
import com.arsdigita.domain.DomainObjectFactory;
|
import com.arsdigita.domain.DomainObjectFactory;
|
||||||
import com.arsdigita.kernel.ui.ACSObjectSelectionModel;
|
import com.arsdigita.kernel.ui.ACSObjectSelectionModel;
|
||||||
import com.arsdigita.atoz.AtoZCategoryProvider;
|
import com.arsdigita.atoz.CategoryProvider;
|
||||||
import com.arsdigita.persistence.OID;
|
import com.arsdigita.persistence.OID;
|
||||||
import com.arsdigita.util.UncheckedWrapperException;
|
import com.arsdigita.util.UncheckedWrapperException;
|
||||||
|
|
||||||
|
|
@ -119,7 +119,7 @@ public class CategoryProviderContentTypeBlockForm extends Form {
|
||||||
public void process(FormSectionEvent e) throws FormProcessException {
|
public void process(FormSectionEvent e) throws FormProcessException {
|
||||||
PageState state = e.getPageState();
|
PageState state = e.getPageState();
|
||||||
|
|
||||||
AtoZCategoryProvider provider = (AtoZCategoryProvider) m_provider
|
CategoryProvider provider = (CategoryProvider) m_provider
|
||||||
.getSelectedObject(state);
|
.getSelectedObject(state);
|
||||||
|
|
||||||
BigDecimal contentTypeID = (BigDecimal) m_type_picker
|
BigDecimal contentTypeID = (BigDecimal) m_type_picker
|
||||||
|
|
|
||||||
|
|
@ -20,13 +20,13 @@ package com.arsdigita.atoz.ui.admin;
|
||||||
|
|
||||||
import com.arsdigita.atoz.AtoZ;
|
import com.arsdigita.atoz.AtoZ;
|
||||||
import com.arsdigita.atoz.AtoZProvider;
|
import com.arsdigita.atoz.AtoZProvider;
|
||||||
import com.arsdigita.atoz.AtoZCategoryProvider;
|
import com.arsdigita.atoz.CategoryProvider;
|
||||||
import com.arsdigita.bebop.PageState;
|
import com.arsdigita.bebop.PageState;
|
||||||
import com.arsdigita.bebop.SimpleComponent;
|
import com.arsdigita.bebop.SimpleComponent;
|
||||||
import com.arsdigita.bebop.form.CheckboxGroup;
|
import com.arsdigita.bebop.form.CheckboxGroup;
|
||||||
import com.arsdigita.categorization.Category;
|
import com.arsdigita.categorization.Category;
|
||||||
import com.arsdigita.kernel.ui.ACSObjectSelectionModel;
|
|
||||||
import com.arsdigita.categorization.ui.CategoryPicker;
|
import com.arsdigita.categorization.ui.CategoryPicker;
|
||||||
|
import com.arsdigita.kernel.ui.ACSObjectSelectionModel;
|
||||||
import com.arsdigita.util.Classes;
|
import com.arsdigita.util.Classes;
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -41,7 +41,7 @@ public class CategoryProviderForm extends ProviderForm {
|
||||||
|
|
||||||
public CategoryProviderForm(ACSObjectSelectionModel provider) {
|
public CategoryProviderForm(ACSObjectSelectionModel provider) {
|
||||||
super("categoryProvider",
|
super("categoryProvider",
|
||||||
AtoZCategoryProvider.class, provider);
|
CategoryProvider.class, provider);
|
||||||
|
|
||||||
setMetaDataAttribute("title", "Category provider properties");
|
setMetaDataAttribute("title", "Category provider properties");
|
||||||
}
|
}
|
||||||
|
|
@ -68,7 +68,7 @@ public class CategoryProviderForm extends ProviderForm {
|
||||||
AtoZProvider provider) {
|
AtoZProvider provider) {
|
||||||
super.processWidgets(state, provider);
|
super.processWidgets(state, provider);
|
||||||
|
|
||||||
AtoZCategoryProvider myprovider = (AtoZCategoryProvider)provider;
|
CategoryProvider myprovider = (CategoryProvider)provider;
|
||||||
myprovider.setCompound(false);
|
myprovider.setCompound(false);
|
||||||
//myprovider.setCompound(Boolean.TRUE.equals(m_compound.getValue(state)));
|
//myprovider.setCompound(Boolean.TRUE.equals(m_compound.getValue(state)));
|
||||||
|
|
||||||
|
|
@ -81,7 +81,7 @@ public class CategoryProviderForm extends ProviderForm {
|
||||||
AtoZProvider provider) {
|
AtoZProvider provider) {
|
||||||
super.initWidgets(state, provider);
|
super.initWidgets(state, provider);
|
||||||
|
|
||||||
AtoZCategoryProvider myprovider = (AtoZCategoryProvider)provider;
|
CategoryProvider myprovider = (CategoryProvider)provider;
|
||||||
if (provider != null) {
|
if (provider != null) {
|
||||||
//m_compound.setValue(state, new Boolean(myprovider.isCompound()));
|
//m_compound.setValue(state, new Boolean(myprovider.isCompound()));
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -26,6 +26,10 @@ import com.arsdigita.bebop.ActionLink;
|
||||||
import com.arsdigita.bebop.Page;
|
import com.arsdigita.bebop.Page;
|
||||||
import com.arsdigita.bebop.Component;
|
import com.arsdigita.bebop.Component;
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
*
|
||||||
|
*/
|
||||||
public class ItemProviderAdmin extends ProviderAdmin {
|
public class ItemProviderAdmin extends ProviderAdmin {
|
||||||
|
|
||||||
private ItemProviderForm m_detailsForm;
|
private ItemProviderForm m_detailsForm;
|
||||||
|
|
@ -36,6 +40,10 @@ public class ItemProviderAdmin extends ProviderAdmin {
|
||||||
private ItemProviderAliasForm m_aliasForm;
|
private ItemProviderAliasForm m_aliasForm;
|
||||||
private ActionLink m_addAlias;
|
private ActionLink m_addAlias;
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @param provider
|
||||||
|
*/
|
||||||
public ItemProviderAdmin(ACSObjectSelectionModel provider) {
|
public ItemProviderAdmin(ACSObjectSelectionModel provider) {
|
||||||
super("categoryProviderAdmin", provider);
|
super("categoryProviderAdmin", provider);
|
||||||
|
|
||||||
|
|
@ -64,6 +72,11 @@ public class ItemProviderAdmin extends ProviderAdmin {
|
||||||
m_aliasForm.addCompletionListener(new ItemAliasComplete());
|
m_aliasForm.addCompletionListener(new ItemAliasComplete());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @param p
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
public void register(Page p) {
|
public void register(Page p) {
|
||||||
super.register(p);
|
super.register(p);
|
||||||
|
|
||||||
|
|
@ -71,6 +84,12 @@ public class ItemProviderAdmin extends ProviderAdmin {
|
||||||
p.setVisibleDefault(m_aliasForm, false);
|
p.setVisibleDefault(m_aliasForm, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @param state
|
||||||
|
* @param form
|
||||||
|
* @param active
|
||||||
|
*/
|
||||||
private void switchMode(PageState state,
|
private void switchMode(PageState state,
|
||||||
Component form,
|
Component form,
|
||||||
boolean active) {
|
boolean active) {
|
||||||
|
|
|
||||||
|
|
@ -40,8 +40,8 @@ import com.arsdigita.categorization.CategorizedCollection;
|
||||||
import com.arsdigita.cms.ContentItem;
|
import com.arsdigita.cms.ContentItem;
|
||||||
import com.arsdigita.kernel.ACSObject;
|
import com.arsdigita.kernel.ACSObject;
|
||||||
import com.arsdigita.kernel.ui.ACSObjectSelectionModel;
|
import com.arsdigita.kernel.ui.ACSObjectSelectionModel;
|
||||||
import com.arsdigita.atoz.AtoZItemAlias;
|
import com.arsdigita.atoz.ItemAlias;
|
||||||
import com.arsdigita.atoz.AtoZItemProvider;
|
import com.arsdigita.atoz.ItemProvider;
|
||||||
import com.arsdigita.util.Classes;
|
import com.arsdigita.util.Classes;
|
||||||
import com.arsdigita.util.UncheckedWrapperException;
|
import com.arsdigita.util.UncheckedWrapperException;
|
||||||
|
|
||||||
|
|
@ -88,7 +88,7 @@ public class ItemProviderAliasForm extends Form {
|
||||||
PageState state = event.getPageState();
|
PageState state = event.getPageState();
|
||||||
boolean valueSet = false;
|
boolean valueSet = false;
|
||||||
|
|
||||||
Category category = ((AtoZItemProvider) m_provider.getSelectedObject(state))
|
Category category = ((ItemProvider) m_provider.getSelectedObject(state))
|
||||||
.getCategory();
|
.getCategory();
|
||||||
|
|
||||||
CategorizedCollection children = category.getObjects(ContentItem.BASE_DATA_OBJECT_TYPE);
|
CategorizedCollection children = category.getObjects(ContentItem.BASE_DATA_OBJECT_TYPE);
|
||||||
|
|
@ -139,7 +139,7 @@ public class ItemProviderAliasForm extends Form {
|
||||||
throws FormProcessException {
|
throws FormProcessException {
|
||||||
PageState state = e.getPageState();
|
PageState state = e.getPageState();
|
||||||
|
|
||||||
AtoZItemProvider provider = (AtoZItemProvider) m_provider
|
ItemProvider provider = (ItemProvider) m_provider
|
||||||
.getSelectedObject(state);
|
.getSelectedObject(state);
|
||||||
|
|
||||||
BigDecimal itemId = new BigDecimal(m_item.getValue(state).toString());
|
BigDecimal itemId = new BigDecimal(m_item.getValue(state).toString());
|
||||||
|
|
@ -150,11 +150,11 @@ public class ItemProviderAliasForm extends Form {
|
||||||
|
|
||||||
//provider.addAlias(item, letter, title);
|
//provider.addAlias(item, letter, title);
|
||||||
|
|
||||||
AtoZItemAlias alias = (AtoZItemAlias) Classes.newInstance(AtoZItemAlias.class);
|
ItemAlias alias = (ItemAlias) Classes.newInstance(ItemAlias.class);
|
||||||
alias.setTitle(title);
|
alias.setTitle(title);
|
||||||
alias.setLetter(letter);
|
alias.setLetter(letter);
|
||||||
alias.setContentItem(item);
|
alias.setContentItem(item);
|
||||||
alias.setAtoZItemProvider(provider);
|
alias.setItemProvider(provider);
|
||||||
alias.save();
|
alias.save();
|
||||||
|
|
||||||
fireCompletionEvent(state);
|
fireCompletionEvent(state);
|
||||||
|
|
|
||||||
|
|
@ -25,8 +25,8 @@ import com.arsdigita.domain.DomainCollection;
|
||||||
import com.arsdigita.domain.DomainObjectFactory;
|
import com.arsdigita.domain.DomainObjectFactory;
|
||||||
import com.arsdigita.kernel.ui.ACSObjectSelectionModel;
|
import com.arsdigita.kernel.ui.ACSObjectSelectionModel;
|
||||||
import com.arsdigita.atoz.AtoZ;
|
import com.arsdigita.atoz.AtoZ;
|
||||||
import com.arsdigita.atoz.AtoZItemAlias;
|
import com.arsdigita.atoz.ItemAlias;
|
||||||
import com.arsdigita.atoz.AtoZItemProvider;
|
import com.arsdigita.atoz.ItemProvider;
|
||||||
import com.arsdigita.persistence.OID;
|
import com.arsdigita.persistence.OID;
|
||||||
import com.arsdigita.util.UncheckedWrapperException;
|
import com.arsdigita.util.UncheckedWrapperException;
|
||||||
import com.arsdigita.xml.Element;
|
import com.arsdigita.xml.Element;
|
||||||
|
|
@ -49,7 +49,7 @@ public class ItemProviderAliasList extends SimpleContainer {
|
||||||
String value = state.getControlEventValue();
|
String value = state.getControlEventValue();
|
||||||
|
|
||||||
if (DELETE.equals(key)) {
|
if (DELETE.equals(key)) {
|
||||||
AtoZItemAlias alias = (AtoZItemAlias) DomainObjectFactory
|
ItemAlias alias = (ItemAlias) DomainObjectFactory
|
||||||
.newInstance(OID.valueOf(value));
|
.newInstance(OID.valueOf(value));
|
||||||
alias.delete();
|
alias.delete();
|
||||||
}
|
}
|
||||||
|
|
@ -61,12 +61,12 @@ public class ItemProviderAliasList extends SimpleContainer {
|
||||||
Element content = AtoZ.newElement("itemProviderAliasList");
|
Element content = AtoZ.newElement("itemProviderAliasList");
|
||||||
exportAttributes(content);
|
exportAttributes(content);
|
||||||
|
|
||||||
AtoZItemProvider provider = (AtoZItemProvider)
|
ItemProvider provider = (ItemProvider)
|
||||||
m_provider.getSelectedObject(state);
|
m_provider.getSelectedObject(state);
|
||||||
|
|
||||||
DomainCollection entries = provider.getAliases();
|
DomainCollection entries = provider.getAliases();
|
||||||
while (entries.next()) {
|
while (entries.next()) {
|
||||||
AtoZItemAlias alias = (AtoZItemAlias) entries.getDomainObject();
|
ItemAlias alias = (ItemAlias) entries.getDomainObject();
|
||||||
|
|
||||||
Element el = AtoZ.newElement("itemProviderAlias");
|
Element el = AtoZ.newElement("itemProviderAlias");
|
||||||
el.addAttribute("letter", XML.format(entries.get("letter")));
|
el.addAttribute("letter", XML.format(entries.get("letter")));
|
||||||
|
|
|
||||||
|
|
@ -18,6 +18,8 @@
|
||||||
|
|
||||||
package com.arsdigita.atoz.ui.admin;
|
package com.arsdigita.atoz.ui.admin;
|
||||||
|
|
||||||
|
import com.arsdigita.atoz.ItemProvider;
|
||||||
|
import com.arsdigita.atoz.AtoZProvider;
|
||||||
import com.arsdigita.bebop.PageState;
|
import com.arsdigita.bebop.PageState;
|
||||||
import com.arsdigita.bebop.SimpleComponent;
|
import com.arsdigita.bebop.SimpleComponent;
|
||||||
import com.arsdigita.bebop.form.Option;
|
import com.arsdigita.bebop.form.Option;
|
||||||
|
|
@ -26,37 +28,41 @@ import com.arsdigita.bebop.form.TextField;
|
||||||
import com.arsdigita.bebop.parameters.NotNullValidationListener;
|
import com.arsdigita.bebop.parameters.NotNullValidationListener;
|
||||||
import com.arsdigita.bebop.parameters.StringInRangeValidationListener;
|
import com.arsdigita.bebop.parameters.StringInRangeValidationListener;
|
||||||
import com.arsdigita.categorization.Category;
|
import com.arsdigita.categorization.Category;
|
||||||
|
import com.arsdigita.categorization.ui.AbstractCategoryPicker;
|
||||||
|
import com.arsdigita.categorization.ui.CategoryPicker;
|
||||||
import com.arsdigita.domain.DomainCollection;
|
import com.arsdigita.domain.DomainCollection;
|
||||||
import com.arsdigita.domain.DomainObjectFactory;
|
import com.arsdigita.domain.DomainObjectFactory;
|
||||||
import com.arsdigita.domain.DomainServiceInterfaceExposer;
|
import com.arsdigita.domain.DomainServiceInterfaceExposer;
|
||||||
import com.arsdigita.kernel.ui.ACSObjectSelectionModel;
|
import com.arsdigita.kernel.ui.ACSObjectSelectionModel;
|
||||||
import com.arsdigita.atoz.AtoZItemProvider;
|
|
||||||
import com.arsdigita.atoz.AtoZProvider;
|
|
||||||
import com.arsdigita.categorization.ui.AbstractCategoryPicker;
|
|
||||||
import com.arsdigita.categorization.ui.CategoryPicker;
|
|
||||||
import com.arsdigita.persistence.DataCollection;
|
import com.arsdigita.persistence.DataCollection;
|
||||||
import com.arsdigita.persistence.DataObject;
|
import com.arsdigita.persistence.DataObject;
|
||||||
import com.arsdigita.persistence.SessionManager;
|
import com.arsdigita.persistence.SessionManager;
|
||||||
|
|
||||||
import java.math.BigDecimal;
|
import java.math.BigDecimal;
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.TreeMap;
|
import java.util.TreeMap;
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
*
|
||||||
|
*/
|
||||||
public class ItemProviderForm extends ProviderForm {
|
public class ItemProviderForm extends ProviderForm {
|
||||||
|
|
||||||
private CategoryPicker m_picker;
|
private CategoryPicker m_picker;
|
||||||
private TextField m_loadPaths;
|
private TextField m_loadPaths;
|
||||||
|
|
||||||
public ItemProviderForm(ACSObjectSelectionModel provider) {
|
public ItemProviderForm(ACSObjectSelectionModel provider) {
|
||||||
super("itemProvider", AtoZItemProvider.class, provider);
|
super("itemProvider", ItemProvider.class, provider);
|
||||||
|
|
||||||
setMetaDataAttribute("title", "Item provider properties");
|
setMetaDataAttribute("title", "Item provider properties");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
protected void addWidgets() {
|
protected void addWidgets() {
|
||||||
super.addWidgets();
|
super.addWidgets();
|
||||||
|
|
||||||
m_loadPaths = new TextField(AtoZItemProvider.LOAD_PATHS);
|
m_loadPaths = new TextField(ItemProvider.LOAD_PATHS);
|
||||||
((SimpleComponent)m_loadPaths).setMetaDataAttribute("label", "Attributes to retrieve");
|
((SimpleComponent)m_loadPaths).setMetaDataAttribute("label", "Attributes to retrieve");
|
||||||
add(m_loadPaths);
|
add(m_loadPaths);
|
||||||
m_loadPaths.addValidationListener(new StringInRangeValidationListener(0, 200));
|
m_loadPaths.addValidationListener(new StringInRangeValidationListener(0, 200));
|
||||||
|
|
@ -66,21 +72,23 @@ public class ItemProviderForm extends ProviderForm {
|
||||||
add(m_picker);
|
add(m_picker);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
protected void processWidgets(PageState state,
|
protected void processWidgets(PageState state,
|
||||||
AtoZProvider provider) {
|
AtoZProvider provider) {
|
||||||
super.processWidgets(state, provider);
|
super.processWidgets(state, provider);
|
||||||
|
|
||||||
AtoZItemProvider myprovider = (AtoZItemProvider)provider;
|
ItemProvider myprovider = (ItemProvider)provider;
|
||||||
|
|
||||||
myprovider.setCategory(m_picker.getCategory(state));
|
myprovider.setCategory(m_picker.getCategory(state));
|
||||||
myprovider.setLoadPaths( (String) m_loadPaths.getValue(state));
|
myprovider.setLoadPaths( (String) m_loadPaths.getValue(state));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
protected void initWidgets(PageState state,
|
protected void initWidgets(PageState state,
|
||||||
AtoZProvider provider) {
|
AtoZProvider provider) {
|
||||||
super.initWidgets(state, provider);
|
super.initWidgets(state, provider);
|
||||||
|
|
||||||
AtoZItemProvider myprovider = (AtoZItemProvider)provider;
|
ItemProvider myprovider = (ItemProvider)provider;
|
||||||
if (provider != null) {
|
if (provider != null) {
|
||||||
//m_compound.setValue(state, new Boolean(myprovider.isCompound()));
|
//m_compound.setValue(state, new Boolean(myprovider.isCompound()));
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -19,7 +19,7 @@
|
||||||
|
|
||||||
package com.arsdigita.atoz.ui.admin;
|
package com.arsdigita.atoz.ui.admin;
|
||||||
|
|
||||||
import com.arsdigita.atoz.AtoZCategoryProvider;
|
import com.arsdigita.atoz.CategoryProvider;
|
||||||
import com.arsdigita.bebop.PageState;
|
import com.arsdigita.bebop.PageState;
|
||||||
import com.arsdigita.categorization.Category;
|
import com.arsdigita.categorization.Category;
|
||||||
import com.arsdigita.cms.CMS;
|
import com.arsdigita.cms.CMS;
|
||||||
|
|
@ -153,7 +153,7 @@ public class TermWidget extends com.arsdigita.london.terms.ui.TermWidget {
|
||||||
* copied from com.arsdigita.aplaws.ui.ACSObjectCategoryPicker
|
* copied from com.arsdigita.aplaws.ui.ACSObjectCategoryPicker
|
||||||
*/
|
*/
|
||||||
protected Domain getDomain(PageState state) {
|
protected Domain getDomain(PageState state) {
|
||||||
AtoZCategoryProvider provider = (AtoZCategoryProvider)m_provider.getSelectedObject(state);
|
CategoryProvider provider = (CategoryProvider)m_provider.getSelectedObject(state);
|
||||||
Category root = Category.getRootForObject(provider);
|
Category root = Category.getRootForObject(provider);
|
||||||
|
|
||||||
if (s_log.isDebugEnabled()) {
|
if (s_log.isDebugEnabled()) {
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue