ccm-ldn-shortcuts umbenannt nach ccm-shortcuts und refactored als legacy-free application.

Update Script ccm-shortcuts --from-version 6.6.0  --to-version 6.6.1 muss ausgeführt werden..
Externe Themes wie Mandalay müssen angepasst werden: Namespace london/shortcuts  ->  shortcuts

git-svn-id: https://svn.libreccm.org/ccm/trunk@1398 8810af33-2d31-482b-a856-94f89814c4df
master
pb 2011-12-26 16:22:23 +00:00
parent f07641e29c
commit bba7fe7f99
57 changed files with 563 additions and 192 deletions

View File

@ -5,7 +5,8 @@ waf.bebop.base_page=com.arsdigita.aplaws.ui.SimplePage
; dhtml editor to use (system wide) ; dhtml editor to use (system wide)
; Xinha is default ; Xinha is default
; default: Xinha editor & src=/assets/xinha/XinhaLoader.js ; default: Xinha editor & src=/assets/xinha/XinhaLoader.js
#waf.bebop.dhtml_editor=FCKeditor ; To use FCKeditor configure:
; waf.bebop.dhtml_editor=FCKeditor
waf.categorization.show_internal_name=true waf.categorization.show_internal_name=true
@ -30,7 +31,7 @@ core.ui.pagemap.user_redirect_url=content/content-center-redirect.jsp
; workflow configuration ; workflow configuration
waf.workflow.simple.alerts_enabled=true waf.workflow.simple.alerts_enabled=true
waf.workflow.simple.alerts_sender=root@localhost.localdomain waf.workflow.simple.alerts_sender=webmaster@libreCMS.org
; Configures the xml processing ; Configures the xml processing
waf.xml.xsl_transformer=xalan waf.xml.xsl_transformer=xalan
@ -46,17 +47,14 @@ com.arsdigita.cms.default_template_resolver_class=com.arsdigita.subsite.dispatch
; Configure dhtml editor for use in cms content-center ; Configure dhtml editor for use in cms content-center
; Xinha is default and should work out of the box ; Xinha is default and should work out of the box
; com.arsdigita.cms.dhtml_editor_config=Xinha.Config,/assets/xinha/XinhaConfig.js ; A CCM specific configuration file is used to prevent a mess with the standard
; as a temporary measure a different configuration file which includes a link selection box for CCM items ; configuration, default is:
; and CCM images should be specified: ; com.arsdigita.cms.dhtml_editor_config=Xinha.Config,/assets/xinha/CCMcmsXinhaConfig.js
com.arsdigita.cms.dhtml_editor_config=Xinha.Config,/assets/xinha/CCMcmsXinhaConfig.js
; to use FCKeditor: ; to use FCKeditor:
; com.arsdigita.cms.dhtml_editor_config=FCKEditor.Config.StyleDefault?,/assets/fckeditor/config/fckconfigOpenCCM.js ; com.arsdigita.cms.dhtml_editor_config=FCKEditor.Config.StyleDefault?,/assets/fckeditor/config/fckconfigOpenCCM.js
; com.arsdigita.cms.dhtml_editor_config=Xinha.Config,/assets/xinha/XinhaConfig.js
; com.arsdigita.cms.dhtml_editor_hidden_buttons= ; com.arsdigita.cms.dhtml_editor_hidden_buttons=
; com.arsdigita.cms.dhtml_editor_plugins= ; com.arsdigita.cms.dhtml_editor_plugins=TableOperations,CSS
com.arsdigita.cms.disable_item_pfs=true com.arsdigita.cms.disable_item_pfs=true
@ -111,7 +109,7 @@ com.arsdigita.navigation.templates_file=bundle/navigation/gen-templates.txt
com.arsdigita.london.search.show_sponsored_links=true com.arsdigita.london.search.show_sponsored_links=true
# ccm-ldn-subsite application # ccm-subsite application
com.arsdigita.subsite.root_category_picker=com.arsdigita.london.terms.ui.RootCategoryPicker com.arsdigita.subsite.root_category_picker=com.arsdigita.london.terms.ui.RootCategoryPicker
@ -129,14 +127,14 @@ themedirector.file_extensions=bmp css gif jpeg jpg js png xml xsl
# ============================================================================================= # =============================================================================================
# runtime specific configurations # runtime specific configurations
waf.admin.email=webmaster@scientificCMS.org waf.admin.email=webmaster@libreCMS.org
waf.admin.name.given=SCI waf.admin.name.given=SCI
waf.admin.name.family=Administrator waf.admin.name.family=Administrator
waf.admin.password=sci2000 waf.admin.password=lib2000
waf.admin.password.question=12345 waf.admin.password.question=12345
waf.admin.password.answer=6 waf.admin.password.answer=6
waf.runtime.jdbc_url=jdbc\:postgresql\://localhost/ccm-sci?user\=sci&password\=sci47web&stringtype\=unspecified waf.runtime.jdbc_url=jdbc\:postgresql\://localhost/ccm-lib?user\=ccm&password\=sci47web&stringtype\=unspecified
waf.runtime.jdbc_pool_size=30 waf.runtime.jdbc_pool_size=30
waf.web.server=localhost\:8080 waf.web.server=localhost\:8080

View File

@ -5,7 +5,8 @@ waf.bebop.base_page=com.arsdigita.aplaws.ui.SimplePage
; dhtml editor to use (system wide) ; dhtml editor to use (system wide)
; Xinha is default ; Xinha is default
; default: Xinha editor & src=/assets/xinha/XinhaLoader.js ; default: Xinha editor & src=/assets/xinha/XinhaLoader.js
#waf.bebop.dhtml_editor=FCKeditor ; To use FCKeditor configure:
; waf.bebop.dhtml_editor=FCKeditor
waf.categorization.show_internal_name=true waf.categorization.show_internal_name=true
@ -30,7 +31,7 @@ core.ui.pagemap.user_redirect_url=content/content-center-redirect.jsp
; workflow configuration ; workflow configuration
waf.workflow.simple.alerts_enabled=true waf.workflow.simple.alerts_enabled=true
waf.workflow.simple.alerts_sender=root@localhost.localdomain waf.workflow.simple.alerts_sender=webmaster@localhost.localdomain
; Configures the xml processing ; Configures the xml processing
waf.xml.xsl_transformer=xalan waf.xml.xsl_transformer=xalan
@ -46,17 +47,14 @@ com.arsdigita.cms.default_template_resolver_class=com.arsdigita.subsite.dispatch
; Configure dhtml editor for use in cms content-center ; Configure dhtml editor for use in cms content-center
; Xinha is default and should work out of the box ; Xinha is default and should work out of the box
; com.arsdigita.cms.dhtml_editor_config=Xinha.Config,/assets/xinha/XinhaConfig.js ; A CCM specific configuration file is used to prevent a mess with the standard
; as a temporary measure a different configuration file which includes a link selection box for CCM items ; configuration, default is:
; and CCM images should be specified: ; com.arsdigita.cms.dhtml_editor_config=Xinha.Config,/assets/xinha/CCMcmsXinhaConfig.js
com.arsdigita.cms.dhtml_editor_config=Xinha.Config,/assets/xinha/CCMcmsXinhaConfig.js
; to use FCKeditor: ; to use FCKeditor:
; com.arsdigita.cms.dhtml_editor_config=FCKEditor.Config.StyleDefault?,/assets/fckeditor/config/fckconfigOpenCCM.js ; com.arsdigita.cms.dhtml_editor_config=FCKEditor.Config.StyleDefault?,/assets/fckeditor/config/fckconfigOpenCCM.js
; com.arsdigita.cms.dhtml_editor_config=Xinha.Config,/assets/xinha/XinhaConfig.js
; com.arsdigita.cms.dhtml_editor_hidden_buttons= ; com.arsdigita.cms.dhtml_editor_hidden_buttons=
; com.arsdigita.cms.dhtml_editor_plugins=TableOperations,CSS ; com.arsdigita.cms.dhtml_editor_plugins=TableOperations,CSS
com.arsdigita.cms.dhtml_editor_plugins=
com.arsdigita.cms.disable_item_pfs=true com.arsdigita.cms.disable_item_pfs=true
@ -111,7 +109,7 @@ com.arsdigita.navigation.templates_file=bundle/navigation/gen-templates.txt
com.arsdigita.london.search.show_sponsored_links=true com.arsdigita.london.search.show_sponsored_links=true
# ccm-ldn-subsite application # ccm-subsite application
com.arsdigita.subsite.root_category_picker=com.arsdigita.london.terms.ui.RootCategoryPicker com.arsdigita.subsite.root_category_picker=com.arsdigita.london.terms.ui.RootCategoryPicker
@ -132,7 +130,7 @@ themedirector.file_extensions=bmp css gif jpeg jpg js png xml xsl
waf.admin.email=webmaster@openccm.org waf.admin.email=webmaster@openccm.org
waf.admin.name.given=OpenCCM waf.admin.name.given=OpenCCM
waf.admin.name.family=Administrator waf.admin.name.family=Administrator
waf.admin.password=WaeGgfsh waf.admin.password=lib2000
waf.admin.password.question=12345 waf.admin.password.question=12345
waf.admin.password.answer=6 waf.admin.password.answer=6

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="ISO-8859-1"?> <?xml version="1.0" encoding="ISO-8859-1"?>
<!-- project.xml - ccm - containing only those modules used for <!-- project.xml - ccm devel - containing only those modules used for
CCM development --> generic CCM / LibreCMS development -->
<ccm:project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" <ccm:project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:ccm="http://ccm.redhat.com/ccm-project" xmlns:ccm="http://ccm.redhat.com/ccm-project"
@ -77,7 +77,6 @@
<!-- Applications --> <!-- Applications -->
<ccm:application name="ccm-cms-publicpersonalprofile"/> <ccm:application name="ccm-cms-publicpersonalprofile"/>
<ccm:application name="ccm-portalserver"/>
<!-- LDN extension --> <!-- LDN extension -->
<!-- temporyrily excluded because configuration has to be cleared <!-- temporyrily excluded because configuration has to be cleared
@ -115,6 +114,7 @@
<ccm:application name="ccm-auth-http"/> <ccm:application name="ccm-auth-http"/>
<ccm:application name="ccm-bookmarks"/> <ccm:application name="ccm-bookmarks"/>
<ccm:application name="ccm-docmgr"/> <ccm:application name="ccm-docmgr"/>
<ccm:application name="ccm-portalserver"/>
--> -->
<!-- <!--
<ccm:application name="ccm-weblog"/> <ccm:application name="ccm-weblog"/>

View File

@ -26,7 +26,5 @@
begin; begin;
\i ../default/upgrade/6.6.2-6.6.3/upd_table_persons.sql \i ../default/upgrade/6.6.2-6.6.3/upd_table_persons.sql
\i ../default/upgrade/6.6.2-6.6.3/create_orgaunit_hierarchy_table.sql
\i ../default/upgrade/6.6.2-6.6.3/create_publish_lock_table.sql
commit; commit;

View File

@ -1,11 +0,0 @@
model com.arsdigita.london.shortcuts;
object type Shortcut {
BigDecimal[1..1] shortcutID = sc_shortcuts.shortcut_id INTEGER;
String[1..1] urlKey = sc_shortcuts.url_key VARCHAR(1000);
String[1..1] redirect = sc_shortcuts.redirect VARCHAR(1000);
object key (shortcutID);
}

View File

@ -1,5 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<registry>
<config class="com.arsdigita.london.shortcuts.ShortcutsConfig"
storage="ccm-ldn-shortcuts/shortcuts.properties"/>
</registry>

View File

@ -48,8 +48,8 @@ object type Contact extends ContentPage {
association { association {
Contact[0..1] associatedContactForItem = Contact[0..1] associatedContactForItem =
join cms_items.item_id to contact_content_item_map.item_id, join cms_items.item_id to ct_ldn_contact_content_item_map.item_id,
join contact_content_item_map.contact_id to ct_ldn_contacts.contact_id; join ct_ldn_contact_content_item_map.contact_id to ct_ldn_contacts.contact_id;
ContentItem[0..n] associatedContentItemsForContact = ContentItem[0..n] associatedContentItemsForContact =
join ct_ldn_contacts.contact_id to ldn_contact_content_item_map.contact_id, join ct_ldn_contacts.contact_id to ldn_contact_content_item_map.contact_id,
join ldn_contact_content_item_map.item_id to cms_items.item_id; join ldn_contact_content_item_map.item_id to cms_items.item_id;
@ -62,13 +62,13 @@ association {
data operation removeContactFromContentItemAssociation { data operation removeContactFromContentItemAssociation {
do { do {
delete from ldn_contact_content_item_map where item_id = :itemID delete from ct_ldn_contact_content_item_map where item_id = :itemID
} }
} }
data operation removeContactFromAllAssociations { data operation removeContactFromAllAssociations {
do { do {
delete from ldn_contact_content_item_map where contact_id = :contactID delete from ct_ldn_contact_content_item_map where contact_id = :contactID
} }
} }
@ -78,7 +78,7 @@ query getContactForItem {
do { do {
select contact_id, item_id select contact_id, item_id
from from
ldn_contact_content_item_map ct_ldn_contact_content_item_map
where where
item_id = :itemID item_id = :itemID
} map { } map {

View File

@ -171,13 +171,6 @@ public class Loader extends PackageLoader {
* *
* No localization here because it is an invariant configuration. * No localization here because it is an invariant configuration.
* *
* NOTE: The wording in the title parameter of ApplicationType determines
* the name of the subdirectory for the XSL stylesheets.
* It gets "urlized", i.e. trimming leading and trailing blanks and replacing
* blanks between words and illegal characters with an hyphen and converted
* to lower case.
* "Portal Workspace" will become "portal-workspace".
*
* @return created ApplicationType * @return created ApplicationType
*/ */
private ApplicationType setupWorkspaceType() { private ApplicationType setupWorkspaceType() {
@ -185,7 +178,14 @@ public class Loader extends PackageLoader {
s_log.debug("Creating an application type for portal workspace. " + s_log.debug("Creating an application type for portal workspace. " +
"Base Data Object Type: " + Workspace.BASE_DATA_OBJECT_TYPE); "Base Data Object Type: " + Workspace.BASE_DATA_OBJECT_TYPE);
/* Create legacy-free application type */ /* Create legacy-free application type
*
* NOTE: The wording in the title parameter of ApplicationType
* determines the name of the subdirectory for the XSL stylesheets.
* It gets "urlized", i.e. trimming leading and trailing blanks and
* replacing blanks between words and illegal characters with an
* hyphen and converted to lower case.
* "Portal Workspace" will become "portal-workspace". */
ApplicationType type = new ApplicationType( ApplicationType type = new ApplicationType(
"Portal Workspace", "Portal Workspace",
Workspace.BASE_DATA_OBJECT_TYPE ); Workspace.BASE_DATA_OBJECT_TYPE );

View File

@ -53,7 +53,6 @@ com.arsdigita.cms.default_template_resolver_class=com.arsdigita.subsite.dispatch
; to use FCKeditor: ; to use FCKeditor:
; com.arsdigita.cms.dhtml_editor_config=FCKEditor.Config.StyleDefault?,/assets/fckeditor/config/fckconfigOpenCCM.js ; com.arsdigita.cms.dhtml_editor_config=FCKEditor.Config.StyleDefault?,/assets/fckeditor/config/fckconfigOpenCCM.js
; com.arsdigita.cms.dhtml_editor_config=Xinha.Config,/assets/xinha/XinhaConfig.js
; com.arsdigita.cms.dhtml_editor_hidden_buttons= ; com.arsdigita.cms.dhtml_editor_hidden_buttons=
; com.arsdigita.cms.dhtml_editor_plugins=TableOperations,CSS ; com.arsdigita.cms.dhtml_editor_plugins=TableOperations,CSS
@ -101,7 +100,7 @@ com.arsdigita.navigation.default_template=/templates/ccm-navigation/navigation/s
com.arsdigita.navigation.templates_file=bundle/navigation/sci-templates.txt com.arsdigita.navigation.templates_file=bundle/navigation/sci-templates.txt
# ccm-ldn-search application # ccm-search application
com.arsdigita.london.search.show_sponsored_links=true com.arsdigita.london.search.show_sponsored_links=true

View File

@ -5,7 +5,8 @@ waf.bebop.base_page=com.arsdigita.aplaws.ui.SimplePage
; dhtml editor to use (system wide) ; dhtml editor to use (system wide)
; Xinha is default ; Xinha is default
; default: Xinha editor & src=/assets/xinha/XinhaLoader.js ; default: Xinha editor & src=/assets/xinha/XinhaLoader.js
#waf.bebop.dhtml_editor=FCKeditor ; To use FCKeditor configure:
; waf.bebop.dhtml_editor=FCKeditor
waf.categorization.show_internal_name=true waf.categorization.show_internal_name=true
@ -38,7 +39,7 @@ waf.xml.activate_full_date_formatter=true
# ccm-cms parameters # ccm-cms parameters
com.arsdigita.cms.category_authoring_add_form=com.arsdigita.bundle.ui.ItemCategoryPicker com.arsdigita.cms.category_authoring_add_form=com.arsdigita.aplaws.ui.ItemCategoryPicker
com.arsdigita.cms.default_folder_template_path=/default/aplaws-folder.jsp com.arsdigita.cms.default_folder_template_path=/default/aplaws-folder.jsp
com.arsdigita.cms.default_item_template_path=/default/aplaws-item.jsp com.arsdigita.cms.default_item_template_path=/default/aplaws-item.jsp
@ -46,17 +47,14 @@ com.arsdigita.cms.default_template_resolver_class=com.arsdigita.subsite.dispatch
; Configure dhtml editor for use in cms content-center ; Configure dhtml editor for use in cms content-center
; Xinha is default and should work out of the box ; Xinha is default and should work out of the box
; com.arsdigita.cms.dhtml_editor_config=Xinha.Config,/assets/xinha/XinhaConfig.js ; A CCM specific configuration file is used to prevent a mess with the standard
; as a temporary measure a different configuration file which includes a link selection box for CCM items ; configuration, default is:
; and CCM images should be specified: ; com.arsdigita.cms.dhtml_editor_config=Xinha.Config,/assets/xinha/CCMcmsXinhaConfig.js
com.arsdigita.cms.dhtml_editor_config=Xinha.Config,/assets/xinha/CCMcmsXinhaConfig.js
; to use FCKeditor: ; to use FCKeditor:
; com.arsdigita.cms.dhtml_editor_config=FCKEditor.Config.StyleDefault?,/assets/fckeditor/config/fckconfigOpenCCM.js ; com.arsdigita.cms.dhtml_editor_config=FCKEditor.Config.StyleDefault?,/assets/fckeditor/config/fckconfigOpenCCM.js
; com.arsdigita.cms.dhtml_editor_config=Xinha.Config,/assets/xinha/XinhaConfig.js
; com.arsdigita.cms.dhtml_editor_hidden_buttons= ; com.arsdigita.cms.dhtml_editor_hidden_buttons=
; com.arsdigita.cms.dhtml_editor_plugins=TableOperations,CSS ; com.arsdigita.cms.dhtml_editor_plugins=TableOperations,CSS
com.arsdigita.cms.dhtml_editor_plugins=
com.arsdigita.cms.disable_item_pfs=true com.arsdigita.cms.disable_item_pfs=true
@ -102,11 +100,11 @@ com.arsdigita.navigation.default_template=/templates/ccm-navigation/navigation/s
com.arsdigita.navigation.templates_file=bundle/navigation/sci-templates.txt com.arsdigita.navigation.templates_file=bundle/navigation/sci-templates.txt
# ccm-ldn-search application # ccm-search application
com.arsdigita.london.search.show_sponsored_links=true com.arsdigita.london.search.show_sponsored_links=true
# ccm-ldn-subsite application # ccm-subsite application
com.arsdigita.subsite.root_category_picker=com.arsdigita.london.terms.ui.RootCategoryPicker com.arsdigita.subsite.root_category_picker=com.arsdigita.london.terms.ui.RootCategoryPicker
@ -119,7 +117,8 @@ themedirector.file_extensions=bmp css gif jpeg jpg js png xml xsl
# ccm-sci-bundle (Loader only) # ccm-sci-bundle (Loader only)
#com.arsdigita.bundle.loader.category_files=bundle/categories/sci-nav-domain-1.00.xml,bundle/categories/sci-nav-hierarchy-1.00.xml #com.arsdigita.bundle.loader.category_files=bundle/categories/sci-nav-domain-1.00.xml,bundle/categories/sci-nav-hierarchy-1.00.xml
#com.arsdigita.bundle.loader.custom_app_instances=com.arsdigita.navigation.Navigation:scimenu:ScientificCMS Navigation Menu,com.arsdigita.navigation.Navigation:libmenu:LibreCMS Navigation Menu
#com.arsdigita.bundle.loader.domain_mappings=STD-NAV:/navigation/,STD-NAV:/generic/,STD-NAV:/portal/
# ============================================================================================= # =============================================================================================
# runtime specific configurations # runtime specific configurations

View File

@ -1,6 +1,7 @@
<?xml version="1.0" encoding="ISO-8859-1"?> <?xml version="1.0" encoding="ISO-8859-1"?>
<!-- project.xml SCI devel - containing only modules used for ScientificCMS --> <!-- project.xml SCI devel - containing only modules used for
ScientificCMS development -->
<ccm:project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" <ccm:project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:ccm="http://ccm.redhat.com/ccm-project" xmlns:ccm="http://ccm.redhat.com/ccm-project"
@ -13,6 +14,11 @@
webapp="ROOT" webapp="ROOT"
xsi:schemaLocation="http://ccm.redhat.com/ccm-project file:tools-ng/common/xsd/project.xsd"> xsi:schemaLocation="http://ccm.redhat.com/ccm-project file:tools-ng/common/xsd/project.xsd">
<ccm:databases>
<ccm:database name="postgres"/>
</ccm:databases>
<ccm:build> <ccm:build>
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - --> <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
@ -74,7 +80,6 @@
<!-- Applications --> <!-- Applications -->
<ccm:application name="ccm-cms-publicpersonalprofile"/> <ccm:application name="ccm-cms-publicpersonalprofile"/>
<ccm:application name="ccm-portalserver"/>
<!-- LDN extension --> <!-- LDN extension -->
<!-- temporyrily excluded because configuration has to be cleared <!-- temporyrily excluded because configuration has to be cleared
@ -123,6 +128,7 @@
<ccm:application name="ccm-forum"/> <ccm:application name="ccm-forum"/>
<ccm:application name="ccm-forum-categorised"/> <ccm:application name="ccm-forum-categorised"/>
<!-- <!--
<ccm:application name="ccm-portalserver"/>
<ccm:application name="ccm-weblog"/> <ccm:application name="ccm-weblog"/>
<ccm:application name="ccm-webpage"/> <ccm:application name="ccm-webpage"/>
--> -->

View File

@ -9,7 +9,7 @@
--> -->
<!-- path to xsl if installed in the main (common) web context <!-- path to xsl if installed in the main (common) web context
--> -->
<xsl:import href="../../../__ccm__/apps/shortcuts/xsl/index.xsl"/> <xsl:import href="../../heirloom/apps/shortcuts/xsl/index.xsl"/>
<xsl:import href="lib/page.xsl"/> <xsl:import href="lib/page.xsl"/>
<xsl:param name="theme-prefix"/> <xsl:param name="theme-prefix"/>

View File

@ -9,7 +9,7 @@
--> -->
<!-- path to xsl if installed in the main (common) web context <!-- path to xsl if installed in the main (common) web context
--> -->
<xsl:import href="../../../__ccm__/apps/subsite/xsl/index.xsl"/> <xsl:import href="../../heirloom/apps/subsite/xsl/index.xsl"/>
<xsl:import href="lib/page.xsl"/> <xsl:import href="lib/page.xsl"/>

View File

@ -1,8 +1,8 @@
<?xml version="1.0"?> <?xml version="1.0"?>
<ccm:application xmlns:ccm="http://ccm.redhat.com/ccm-project" <ccm:application xmlns:ccm="http://ccm.redhat.com/ccm-project"
name="ccm-ldn-shortcuts" name="ccm-shortcuts"
prettyName="Shortcuts" prettyName="Shortcuts"
version="6.6.0" version="6.6.1"
release="1" release="1"
webapp="ROOT"> webapp="ROOT">
<ccm:dependencies> <ccm:dependencies>

View File

@ -1,5 +1,5 @@
Up to APLAWS version 1.0.4 shortcuts had been installed into its own Up to APLAWS version 1.0.4 shortcuts had been installed into its own
application context: [webapps]/ccm-ldn-shortcuts. application context: [webapps]/ccm-shortcuts.
Now it is installed inside the main APLAWS application context along Now it is installed inside the main APLAWS application context along
with all other applications. with all other applications.
@ -8,7 +8,7 @@ If shortcuts should be installed as its own web context again following
modifications are necessary: modifications are necessary:
1. remove webapp="xxx" from application.xml 1. remove webapp="xxx" from application.xml
2. move the files in this dir to WEB-INF/ 2. move the files in this dir to WEB-INF/
3. change src/com/ad/london/shortcuts/Shortcuts.java 3. change src/com/ad/shortcuts/Shortcuts.java
method getServletContext() as back to "/files" method getServletContext() as back to "/files"
4. edit __ccm__/.../xsl/index.xsl according the comment 4. edit __ccm__/.../xsl/index.xsl according the comment
5. edit in ccm-ldn-aplaws /web/__ccm__/themes/aplaws/shortcuts.xml 5. edit in ccm-ldn-aplaws /web/__ccm__/themes/aplaws/shortcuts.xml

View File

@ -8,7 +8,7 @@
<servlet-class>com.arsdigita.web.ContextRegistrationServlet</servlet-class> <servlet-class>com.arsdigita.web.ContextRegistrationServlet</servlet-class>
<init-param> <init-param>
<param-name>uri</param-name> <param-name>uri</param-name>
<param-value>/ccm-ldn-shortcuts/</param-value> <param-value>/ccm-shortcuts/</param-value>
</init-param> </init-param>
<load-on-startup>1</load-on-startup> <load-on-startup>1</load-on-startup>
</servlet> </servlet>
@ -18,7 +18,7 @@
<servlet-class>com.arsdigita.web.ApplicationFileServlet</servlet-class> <servlet-class>com.arsdigita.web.ApplicationFileServlet</servlet-class>
<init-param> <init-param>
<param-name>template-path</param-name> <param-name>template-path</param-name>
<param-value>/templates/ccm-ldn-shortcuts</param-value> <param-value>/templates/ccm-shortcuts</param-value>
</init-param> </init-param>
</servlet> </servlet>

View File

@ -4,13 +4,13 @@
<servlet-class>com.arsdigita.web.ApplicationFileServlet</servlet-class> <servlet-class>com.arsdigita.web.ApplicationFileServlet</servlet-class>
<init-param> <init-param>
<param-name>template-path</param-name> <param-name>template-path</param-name>
<param-value>/templates/ccm-ldn-shortcuts</param-value> <param-value>/templates/ccm-shortcuts</param-value>
</init-param> </init-param>
</servlet> </servlet>
<!-- module ccm-ldn-shortcuts - servlet mappings --> <!-- module ccm-ldn-shortcuts - servlet mappings -->
<servlet-mapping> <servlet-mapping>
<servlet-name>shortcuts-files</servlet-name> <servlet-name>shortcuts-files</servlet-name>
<url-pattern>/ccm-ldn-shortcuts/files/*</url-pattern> <url-pattern>/ccm-shortcuts/files/*</url-pattern>
</servlet-mapping> </servlet-mapping>

View File

@ -0,0 +1,28 @@
//
// 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
model com.arsdigita.shortcuts;
object type Shortcut {
BigDecimal[1..1] shortcutID = sc_shortcuts.shortcut_id INTEGER;
String[1..1] urlKey = sc_shortcuts.url_key VARCHAR(1000);
String[1..1] redirect = sc_shortcuts.redirect VARCHAR(1000);
object key (shortcutID);
}

View File

@ -15,10 +15,13 @@
// 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.london.shortcuts; model com.arsdigita.shortcuts;
import com.arsdigita.web.Application; import com.arsdigita.web.Application;
object type Shortcuts extends Application { object type Shortcuts extends Application {
reference key (sc_app.application_id); // nothing to persist
// there is only one instance of shortcuts (the admin application) and
// no instance specific settings to be persisted.
// reference key (sc_app.application_id);
} }

View File

@ -0,0 +1,23 @@
--
-- Copyright (C) 2011 Peter Boy 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
--
-- $Id: drop_app_table.sql pboy $
-- drops table subsite_app which just contained application type id and is
-- never used for any action.
drop table sc_app ;

View File

@ -0,0 +1,131 @@
--
-- Copyright (C) 2011 Peter Boy. 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
--
-- $Id: remove_legacy_entries.sql $
-- Subsite is now initialized as a legacy free type of application so
-- entries in tables apm_package_types are no longer needed.
-- in case there may be several application instances!
-- delete from object_context all entries referring to node_id in site_nodes
delete from object_context
where object_id in
(select node_id from site_nodes object_id where object_id in
( select package_id from applications where application_type_id =
(select application_type_id from application_types
where object_type
like '%shortcuts.Shortcuts%')
)
);
-- delete from acs_objects all entries referring to node_id in site_nodes
alter table site_nodes drop constraint site_nodes_node_id_f_n1m2y ;
delete from acs_objects
where object_id in
(select node_id from site_nodes where object_id in
( select package_id from applications where application_type_id =
(select application_type_id from application_types
where object_type
like '%shortcuts.Shortcuts%')
)
);
-- delete all entries in site_nodes referring to a subsite instance
delete from site_nodes
where object_id in
(select package_id from applications where application_type_id =
(select application_type_id from application_types
where object_type
like '%shortcuts.Shortcuts%')
);
alter table site_nodes add constraint site_nodes_node_id_f_n1m2y
FOREIGN KEY (node_id)
REFERENCES acs_objects (object_id) MATCH SIMPLE
ON UPDATE NO ACTION ON DELETE NO ACTION ;
-- delete from object_context all entries referring to package_id in apm_packages
delete from object_context
where object_id in
(select package_id from apm_packages where package_type_id =
(select package_type_id from application_types
where object_type
like 'com.arsdigita.shortcuts.Shortcuts')
);
-- delete from acs_objects all entries referring to package_id in apm_packages
alter table apm_packages drop constraint apm_package_package_id_f_46may ;
alter table applications drop constraint application_package_id_f_cdaho ;
delete from acs_objects
where object_id in
(select package_id from apm_packages where package_type_id =
(select package_type_id from application_types
where object_type
like 'com.arsdigita.shortcuts.Shortcuts')
);
-- delete all entries for subsite instances in apm_packages
-- identified by package_type_id in application_types
delete from apm_packages
where package_type_id =
(select package_type_id from application_types
where object_type
like 'com.arsdigita.shortcuts.Shortcuts') ;
-- there seem to be no intries for a apm_packages_types entry (row) in
-- acs_objects or object_context!
-- delete all entries for subsite in apm_package_types identified by
-- package_type_id in application_types
alter table application_types drop constraint applica_typ_pac_typ_id_f_v80ma ;
delete from apm_package_types
where package_type_id =
(select package_type_id from application_types
where object_type
like 'com.arsdigita.shortcuts.Shortcuts') ;
-- set package_id to null for all entries referring to a subsite instance
-- (indicating a new legacy free application)
update applications
set package_id = null
where application_type_id =
(select application_type_id from application_types
where object_type
like 'com.arsdigita.shortcuts.Shortcuts') ;
-- set package_id to null for all entries referring to a subsite instance
-- (indicating a new legacy free application)
update application_types
set package_type_id = null
where object_type like 'com.arsdigita.shortcuts.Shortcuts' ;
alter table application_types add constraint applica_typ_pac_typ_id_f_v80ma
FOREIGN KEY (package_type_id)
REFERENCES apm_package_types (package_type_id)
MATCH SIMPLE ON UPDATE NO ACTION ON DELETE NO ACTION ;
alter table applications add constraint application_package_id_f_cdaho
FOREIGN KEY (package_id)
REFERENCES apm_packages (package_id) MATCH SIMPLE
ON UPDATE NO ACTION ON DELETE NO ACTION ;
alter table apm_packages add constraint apm_package_package_id_f_46may
FOREIGN KEY (package_id)
REFERENCES acs_objects (object_id) MATCH SIMPLE
ON UPDATE NO ACTION ON DELETE NO ACTION ;

View File

@ -0,0 +1,66 @@
--
-- Copyright (C) 2011 Peter Boy 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
--
-- $Id: upd_system_tables.sql pboy $
-- adjust various system tables to the new name of application shortcuts
alter table init_requirements drop constraint init_requirements_init_f_cmmdn ;
alter table init_requirements drop constraint init_require_requ_init_f_i6rgg ;
update inits
set class_name=replace(class_name,'london.shortcuts', 'shortcuts')
where class_name like '%london.shortcuts%' ;
update init_requirements
set init=replace(init,'london.shortcuts', 'shortcuts')
where init like '%london.shortcuts%' ;
update init_requirements
set required_init=replace(required_init,'london.shortcuts', 'shortcuts')
where required_init like '%london.shortcuts%' ;
ALTER TABLE ONLY init_requirements
ADD CONSTRAINT init_requirements_init_f_cmmdn FOREIGN KEY (init)
REFERENCES inits (class_name) MATCH SIMPLE
ON UPDATE NO ACTION ON DELETE NO ACTION;
ALTER TABLE init_requirements
ADD CONSTRAINT init_require_requ_init_f_i6rgg FOREIGN KEY (required_init)
REFERENCES inits (class_name) MATCH SIMPLE
ON UPDATE NO ACTION ON DELETE NO ACTION;
update application_types
set object_type=replace(object_type,'london.shortcuts', 'shortcuts')
where object_type like '%london.shortcuts%' ;
-- table applications doesn't require an update
-- table apm_package_types doesn't require an update
-- table apm_packages doesn't require an update either
-- table site_nodes doesn't require an update either
-- update application type in acs_objects
update acs_objects
set (object_type,default_domain_class) =
(replace(object_type,'london.shortcuts', 'shortcuts') ,
replace(default_domain_class,'london.shortcuts', 'shortcuts') )
where object_type like '%london.shortcuts%' ;

View File

@ -0,0 +1,30 @@
--
-- Copyright (C) 2011 Peter Boy 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
--
-- $DateTime: 2011/03/27 23:15:09 $
-- $Id: oracle-se-6.6.0-6.6.1 pboy $
-- drop table subsite_app - not needed anyway
@@ default/6.6.0-6.6.1/drop_app_table.sql
-- rename table containing defined subsites following ccm naming conventions
@@ default/6.6.0-6.6.1/ren_sites_table.sql
-- rename application from london.subsite to subsite
@@ default/6.6.0-6.6.1/upd_system_tables.sql
-- remove legacy compatible bits
@@ default/6.6.0-6.6.1/remove_legacy_entries.sql
-- adjust class name in content_sections table
@@ default/6.6.0-6.6.1/upd_cms_tables.sql

View File

@ -0,0 +1,33 @@
--
-- Copyright (C) 2011 Peter Boy 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
--
-- $DateTime: 2010/11/10 23:15:09 $
\echo Red Hat Enterprise ccm-shortcuts 6.6.0 -> 6.6.1 Upgrade Script (PostgreSQL)
begin;
-- drop table sc_app - not needed anyway
\i default/6.6.0-6.6.1/drop_app_table.sql
-- rename application from london.shortcuts to shortcuts
\i default/6.6.0-6.6.1/upd_system_tables.sql
-- remove legacy compatible bits
\i default/6.6.0-6.6.1/remove_legacy_entries.sql
commit;

View File

@ -0,0 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<registry>
<config class="com.arsdigita.shortcuts.ShortcutsConfig"
storage="ccm-shortcuts/shortcuts.properties"/>
</registry>

View File

@ -8,10 +8,10 @@
<!-- <!--
<table name=""/> <table name=""/>
--> -->
<initializer class="com.arsdigita.london.shortcuts.Initializer"/> <initializer class="com.arsdigita.shortcuts.Initializer"/>
</provides> </provides>
<scripts> <scripts>
<schema directory="ccm-ldn-shortcuts"/> <schema directory="ccm-shortcuts"/>
<data class="com.arsdigita.london.shortcuts.Loader"/> <data class="com.arsdigita.shortcuts.Loader"/>
</scripts> </scripts>
</load> </load>

View File

@ -0,0 +1,5 @@
<upgrade>
<version from="6.6.0" to="6.6.1">
<script sql="ccm-shortcuts/upgrade/::database::-6.6.0-6.6.1.sql"/>
</version>
</upgrade>

View File

@ -16,7 +16,7 @@
* 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.london.shortcuts; package com.arsdigita.shortcuts;
import com.arsdigita.db.DbHelper; import com.arsdigita.db.DbHelper;
@ -51,7 +51,7 @@ public class Initializer extends CompoundInitializer {
add(new PDLInitializer add(new PDLInitializer
(new ManifestSource (new ManifestSource
("ccm-ldn-shortcuts.pdl.mf", ("ccm-shortcuts.pdl.mf",
new NameFilter(DbHelper.getDatabaseSuffix(database), "pdl")))); new NameFilter(DbHelper.getDatabaseSuffix(database), "pdl"))));
} }

View File

@ -16,7 +16,7 @@
* 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.london.shortcuts; package com.arsdigita.shortcuts;
import com.arsdigita.loader.PackageLoader; import com.arsdigita.loader.PackageLoader;
@ -31,6 +31,10 @@ import com.arsdigita.web.Application;
import org.apache.log4j.Logger; import org.apache.log4j.Logger;
/** /**
* Executes nonrecurring at install time and loads (and configures ) the
* shortcut application type and the administration instance.
* Shortcuts works by a filter servlet activated in web.xml
*
* Loads the shortcuts application and type. * Loads the shortcuts application and type.
* *
* @author Daniel Berrange * @author Daniel Berrange
@ -40,6 +44,11 @@ public class Loader extends PackageLoader {
private static final Logger s_log = Logger.getLogger(Loader.class); private static final Logger s_log = Logger.getLogger(Loader.class);
/**
* Run script invoked by com.arsdigita.packing loader script.
*
* @param ctx
*/
public void run(final ScriptContext ctx) { public void run(final ScriptContext ctx) {
new KernelExcursion() { new KernelExcursion() {
public void excurse() { public void excurse() {
@ -49,17 +58,35 @@ public class Loader extends PackageLoader {
}.run(); }.run();
} }
/**
* Creates a shortcuts as a legacy-free application type.
*
* No localization here because it is an invariant configuration.
*/
private void setupShortcuts() { private void setupShortcuts() {
ApplicationType type = ApplicationType s_log.debug("Creating an application type for shortcuts. " +
"Base Data Object Type: " + Shortcuts.BASE_DATA_OBJECT_TYPE);
/* Create legacy-campatible application type */
/* ApplicationType type = ApplicationType
.createApplicationType("shortcuts", .createApplicationType("shortcuts",
"CCM Shortcuts Admin", "CCM Shortcuts Admin",
Shortcuts.BASE_DATA_OBJECT_TYPE); */
/* Create legacy-free application type
* NOTE: The wording in the title parameter of ApplicationType
* determines the name of the subdirectory for the XSL stylesheets.
* It gets "urlized", i.e. trimming leading and trailing blanks and
* replacing blanks between words and illegal characters with an
* hyphen and converted to lower case.
* "Shortcuts" will become "shortcuts". */
ApplicationType type = new ApplicationType(
"Shortcuts",
Shortcuts.BASE_DATA_OBJECT_TYPE ); Shortcuts.BASE_DATA_OBJECT_TYPE );
type.setDescription("CCM shortcuts administration"); type.setDescription("CCM Shortcuts Administration instance");
Application admin = Application.retrieveApplicationForPath("/admin/"); Application admin = Application.retrieveApplicationForPath("/admin/");
Application app = Application app = Application.createApplication(type,
Application.createApplication(type,
"shortcuts", "shortcuts",
"CCM Shortcuts Admin", "CCM Shortcuts Admin",
admin); admin);

View File

@ -13,7 +13,7 @@
* *
*/ */
package com.arsdigita.london.shortcuts; package com.arsdigita.shortcuts;
import com.arsdigita.db.Sequences; import com.arsdigita.db.Sequences;
import com.arsdigita.domain.DataObjectNotFoundException; import com.arsdigita.domain.DataObjectNotFoundException;
@ -39,7 +39,8 @@ public class Shortcut extends DomainObject {
public static final String URL_KEY = "urlKey"; public static final String URL_KEY = "urlKey";
public static final String REDIRECT = "redirect"; public static final String REDIRECT = "redirect";
public static final String BASE_DATA_OBJECT_TYPE = "com.arsdigita.london.shortcuts.Shortcut"; public static final String BASE_DATA_OBJECT_TYPE =
"com.arsdigita.shortcuts.Shortcut";
protected String getBaseDataObjectType() { protected String getBaseDataObjectType() {
return BASE_DATA_OBJECT_TYPE; return BASE_DATA_OBJECT_TYPE;

View File

@ -13,7 +13,7 @@
* *
*/ */
package com.arsdigita.london.shortcuts; package com.arsdigita.shortcuts;
import com.arsdigita.domain.DomainCollection; import com.arsdigita.domain.DomainCollection;
import com.arsdigita.domain.DomainObject; import com.arsdigita.domain.DomainObject;

View File

@ -16,7 +16,7 @@
* 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.london.shortcuts; package com.arsdigita.shortcuts;
import com.arsdigita.web.BaseFilter; import com.arsdigita.web.BaseFilter;

View File

@ -13,7 +13,7 @@
* *
*/ */
package com.arsdigita.london.shortcuts; package com.arsdigita.shortcuts;
import com.arsdigita.caching.CacheTable; import com.arsdigita.caching.CacheTable;
import com.arsdigita.persistence.SessionManager; import com.arsdigita.persistence.SessionManager;
@ -26,8 +26,7 @@ import org.apache.log4j.Logger;
public class ShortcutUtil { public class ShortcutUtil {
private static final Logger s_log = private static final Logger s_log = Logger.getLogger(ShortcutUtil.class);
Logger.getLogger(ShortcutUtil.class);
private static CacheTable s_remote = new CacheTable("shortcuts"); private static CacheTable s_remote = new CacheTable("shortcuts");
private static Map s_cache = new HashMap(); private static Map s_cache = new HashMap();

View File

@ -16,7 +16,7 @@
* 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.london.shortcuts; package com.arsdigita.shortcuts;
import com.arsdigita.persistence.DataObject; import com.arsdigita.persistence.DataObject;
import com.arsdigita.persistence.OID; import com.arsdigita.persistence.OID;
@ -32,16 +32,10 @@ public class Shortcuts extends Application {
private static final Logger logger = Logger.getLogger(Shortcuts.class); private static final Logger logger = Logger.getLogger(Shortcuts.class);
public static final String BASE_DATA_OBJECT_TYPE public static final String BASE_DATA_OBJECT_TYPE =
= "com.arsdigita.london.shortcuts.Shortcuts"; "com.arsdigita.shortcuts.Shortcuts";
private static ShortcutsConfig s_config = new ShortcutsConfig(); private static ShortcutsConfig s_config = ShortcutsConfig.getConfig();
static {
logger.debug("Static initalizer starting...");
s_config.load();
logger.debug("Static initalizer finished.");
}
public static ShortcutsConfig getConfig() { public static ShortcutsConfig getConfig() {
return s_config; return s_config;
@ -93,6 +87,6 @@ public class Shortcuts extends Application {
*/ */
public String getServletPath() { public String getServletPath() {
// return "/files"; // return "/files";
return "/ccm-ldn-shortcuts/files"; return "/ccm-shortcuts/files";
} }
} }

View File

@ -16,11 +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.london.shortcuts; package com.arsdigita.shortcuts;
import com.arsdigita.runtime.AbstractConfig; import com.arsdigita.runtime.AbstractConfig;
import com.arsdigita.util.parameter.IntegerParameter;
import com.arsdigita.util.parameter.Parameter;
import org.apache.log4j.Logger; import org.apache.log4j.Logger;
@ -36,9 +34,43 @@ import org.apache.log4j.Logger;
*/ */
public final class ShortcutsConfig extends AbstractConfig { public final class ShortcutsConfig extends AbstractConfig {
/** A logger instance to assist debugging. */
private static final Logger s_log = Logger.getLogger(ShortcutsConfig.class); private static final Logger s_log = Logger.getLogger(ShortcutsConfig.class);
/** Singelton config object. */
private static ShortcutsConfig s_conf;
/**
* Gain a SubsiteConfig object.
*
* Singelton pattern, don't instantiate a config object using the
* constructor directly!
* @return
*/
public static synchronized ShortcutsConfig getConfig() {
if (s_conf == null) {
s_conf = new ShortcutsConfig();
s_conf.load();
}
return s_conf;
}
// ////////////////////////////////////////////////////////////////////////
// Set of configuration parameters
// Nothing to configurfe yet
/**
* Constructor (singleton pattern).
* Don't instantiate a config object using the constructor directly!
* use getConfig instead!
*/
public ShortcutsConfig() { public ShortcutsConfig() {
// register([parameter]);
loadInfo(); loadInfo();
} }
} }

View File

@ -13,9 +13,7 @@
* *
*/ */
package com.arsdigita.london.shortcuts.ui; package com.arsdigita.shortcuts.ui;
import java.math.BigDecimal;
import org.apache.log4j.Category; import org.apache.log4j.Category;
@ -23,7 +21,6 @@ import com.arsdigita.bebop.Page;
import com.arsdigita.bebop.SimpleContainer; import com.arsdigita.bebop.SimpleContainer;
import com.arsdigita.bebop.parameters.BigDecimalParameter; import com.arsdigita.bebop.parameters.BigDecimalParameter;
import com.arsdigita.kernel.ui.ACSObjectSelectionModel; import com.arsdigita.kernel.ui.ACSObjectSelectionModel;
import com.arsdigita.london.shortcuts.Shortcut;
public class AdminPanel extends SimpleContainer { public class AdminPanel extends SimpleContainer {
@ -38,6 +35,7 @@ public class AdminPanel extends SimpleContainer {
add(new ShortcutsTable(m_shortcut)); add(new ShortcutsTable(m_shortcut));
} }
@Override
public void register(Page p) { public void register(Page p) {
super.register(p); super.register(p);

View File

@ -17,7 +17,7 @@
* *
*/ */
package com.arsdigita.london.shortcuts.ui; package com.arsdigita.shortcuts.ui;
import java.math.BigDecimal; import java.math.BigDecimal;
@ -29,8 +29,8 @@ import com.arsdigita.bebop.PageState;
import com.arsdigita.bebop.event.FormValidationListener; import com.arsdigita.bebop.event.FormValidationListener;
import com.arsdigita.bebop.Label; import com.arsdigita.bebop.Label;
import com.arsdigita.bebop.form.Submit; import com.arsdigita.bebop.form.Submit;
import com.arsdigita.london.shortcuts.ShortcutUtil; import com.arsdigita.shortcuts.ShortcutUtil;
import com.arsdigita.london.shortcuts.Shortcut; import com.arsdigita.shortcuts.Shortcut;
import com.arsdigita.bebop.Form; import com.arsdigita.bebop.Form;
import com.arsdigita.bebop.parameters.TrimmedStringParameter; import com.arsdigita.bebop.parameters.TrimmedStringParameter;
import com.arsdigita.bebop.parameters.NotEmptyValidationListener; import com.arsdigita.bebop.parameters.NotEmptyValidationListener;

View File

@ -17,7 +17,7 @@
* *
*/ */
package com.arsdigita.london.shortcuts.ui; package com.arsdigita.shortcuts.ui;
import com.arsdigita.bebop.Table; import com.arsdigita.bebop.Table;
import com.arsdigita.bebop.table.TableModelBuilder; import com.arsdigita.bebop.table.TableModelBuilder;
@ -26,9 +26,9 @@ import com.arsdigita.bebop.table.TableModel;
import com.arsdigita.bebop.PageState; import com.arsdigita.bebop.PageState;
import com.arsdigita.kernel.ui.ACSObjectSelectionModel; import com.arsdigita.kernel.ui.ACSObjectSelectionModel;
import com.arsdigita.london.shortcuts.Shortcut; import com.arsdigita.shortcuts.Shortcut;
import com.arsdigita.london.shortcuts.ShortcutUtil; import com.arsdigita.shortcuts.ShortcutUtil;
import com.arsdigita.london.shortcuts.ShortcutCollection; import com.arsdigita.shortcuts.ShortcutCollection;
import java.math.BigDecimal; import java.math.BigDecimal;
import org.apache.log4j.Category; import org.apache.log4j.Category;

View File

@ -6,7 +6,7 @@
<filter> <filter>
<filter-name>shortcuts</filter-name> <filter-name>shortcuts</filter-name>
<filter-class>com.arsdigita.london.shortcuts.ShortcutFilter</filter-class> <filter-class>com.arsdigita.shortcuts.ShortcutFilter</filter-class>
</filter> </filter>
<filter-mapping> <filter-mapping>
@ -14,20 +14,20 @@
<url-pattern>/*</url-pattern> <url-pattern>/*</url-pattern>
</filter-mapping> </filter-mapping>
<!-- module ccm-ldn-shortcuts - servlet definitions --> <!-- module ccm-shortcuts - servlet definitions -->
<servlet> <servlet>
<servlet-name>shortcuts-files</servlet-name> <servlet-name>shortcuts-files</servlet-name>
<servlet-class>com.arsdigita.web.ApplicationFileServlet</servlet-class> <servlet-class>com.arsdigita.web.ApplicationFileServlet</servlet-class>
<init-param> <init-param>
<param-name>template-path</param-name> <param-name>template-path</param-name>
<param-value>/templates/ccm-ldn-shortcuts</param-value> <param-value>/templates/ccm-shortcuts</param-value>
</init-param> </init-param>
</servlet> </servlet>
<!-- module ccm-ldn-shortcuts - servlet mappings --> <!-- module ccm-shortcuts - servlet mappings -->
<servlet-mapping> <servlet-mapping>
<servlet-name>shortcuts-files</servlet-name> <servlet-name>shortcuts-files</servlet-name>
<url-pattern>/ccm-ldn-shortcuts/files/*</url-pattern> <url-pattern>/ccm-shortcuts/files/*</url-pattern>
</servlet-mapping> </servlet-mapping>
</web-app> </web-app>

View File

@ -16,7 +16,7 @@
title="Shortcuts Admin" cache="true"> title="Shortcuts Admin" cache="true">
<define:component name="admin" <define:component name="admin"
classname="com.arsdigita.london.shortcuts.ui.AdminPanel"/> classname="com.arsdigita.shortcuts.ui.AdminPanel"/>
<jsp:scriptlet> <jsp:scriptlet>
shortcutsPage.addRequestListener(new ApplicationAuthenticationListener()); shortcutsPage.addRequestListener(new ApplicationAuthenticationListener());

View File

@ -4,14 +4,14 @@
xmlns:shortcuts="http://www.arsdigita.com/shortcuts/1.0" xmlns:shortcuts="http://www.arsdigita.com/shortcuts/1.0"
xmlns:bebop="http://www.arsdigita.com/bebop/1.0"> xmlns:bebop="http://www.arsdigita.com/bebop/1.0">
<!-- IMPORT DEFINITIONS ccm-ldn-shortcuts installed as separate web application <!-- IMPORT DEFINITIONS ccm-shortcuts installed as separate web application
<xsl:import href="../../../../../ROOT/packages/bebop/xsl/bebop.xsl"/> <xsl:import href="../../../../../ROOT/packages/bebop/xsl/bebop.xsl"/>
<xsl:import href="../../../../../ROOT/packages/ui/xsl/ui.xsl"/> <xsl:import href="../../../../../ROOT/packages/ui/xsl/ui.xsl"/>
--> -->
<!-- IMPORT DEFINITIONS ccm-ldn-shortcuts installed into the main CCM webapp <!-- IMPORT DEFINITIONS ccm-ldn-shortcuts installed into the main CCM webapp
--> -->
<xsl:import href="../../../../packages/bebop/xsl/bebop.xsl"/> <xsl:import href="../../../packages/bebop/xsl/bebop.xsl"/>
<xsl:import href="../../../../packages/ui/xsl/ui.xsl"/> <xsl:import href="../../../packages/ui/xsl/ui.xsl"/>
</xsl:stylesheet> </xsl:stylesheet>

View File

@ -23,5 +23,7 @@ import com.arsdigita.web.Application;
object type Subsite extends Application { object type Subsite extends Application {
// nothing to persist // nothing to persist
// there is only one instance of subsite (the admin application) and
// no instance specific settings to be persisted.
// reference key (subsite_app.application_id); // reference key (subsite_app.application_id);
} }

View File

@ -11,7 +11,7 @@
<xsl:import href="../../../../../ROOT/packages/ui/xsl/ui.xsl"/> <xsl:import href="../../../../../ROOT/packages/ui/xsl/ui.xsl"/>
--> -->
<!-- IMPORT DEFINITIONS ccm-ldn-shortcuts installed into the main CCM webapp <!-- IMPORT DEFINITIONS ccm-shortcuts installed into the main CCM webapp
--> -->
<xsl:import href="../../../packages/bebop/xsl/bebop.xsl"/> <xsl:import href="../../../packages/bebop/xsl/bebop.xsl"/>
<xsl:import href="../../../packages/ui/xsl/ui.xsl"/> <xsl:import href="../../../packages/ui/xsl/ui.xsl"/>

View File

@ -29,7 +29,7 @@
#ccm.bundle.folder=${ccm.project.dir}/ccm-sci-bundle/bundles/devel #ccm.bundle.folder=${ccm.project.dir}/ccm-sci-bundle/bundles/devel
#ccm.bundle.folder=${ccm.project.dir}/ccm-sci-bundle/bundles/demo #ccm.bundle.folder=${ccm.project.dir}/ccm-sci-bundle/bundles/demo
#ccm.bundle.folder=${ccm.project.dir}/ccm-sci-bundle/bundles/local/aap #ccm.bundle.folder=${ccm.project.dir}/ccm-sci-bundle/bundles/local/aap
ccm.bundle.folder=${ccm.project.dir}/ccm-sci-bundle/bundles/local/iaw-std ccm.bundle.folder=${ccm.project.dir}/ccm-sci-bundle/bundles/local/iaw
#ccm.bundle.folder=${ccm.project.dir}/ccm-quasi-bundle/bundles/devel #ccm.bundle.folder=${ccm.project.dir}/ccm-quasi-bundle/bundles/devel
@ -39,6 +39,19 @@ ccm.bundle.folder=${ccm.project.dir}/ccm-sci-bundle/bundles/local/iaw-std
## ==================================================================== ## ====================================================================
# ---------------------------------------------------------------------
# Update von rel. 1.1.6 auf 1.1.x (trunk)
# Müssen NACH dem (regulären) Update 1.1.4 -> 1.1.6 durchgeführt werden
# Reihenfolge: hier von OBEN nach UNTEN!
# ---------------------------------------------------------------------
# Alle Versionen / Bundles:
# (hb r1398 Umbennen ccm-ldn-shortcuts nach ccm-shortcuts und legacy free app)
ccm.upgrade.package=ccm-shortcuts
ccm.upgrade.from.version=6.6.0
ccm.upgrade.to.version=6.6.1
# --------------------------------------------------------------------- # ---------------------------------------------------------------------
# Update von rel. 1.1.4 auf 1.1.6 # Update von rel. 1.1.4 auf 1.1.6
# Müssen NACH dem (regulären) Update 1.1.3 -> 1.1.4 durchgeführt werden # Müssen NACH dem (regulären) Update 1.1.3 -> 1.1.4 durchgeführt werden

View File

@ -295,6 +295,12 @@
<location>ccm-bookmarks/src</location> <location>ccm-bookmarks/src</location>
<encoding>UTF-8</encoding> <encoding>UTF-8</encoding>
</source-folder> </source-folder>
<source-folder>
<label>ccm-bundle (Source)</label>
<type>java</type>
<location>ccm-bundle/src</location>
<encoding>UTF-8</encoding>
</source-folder>
<source-folder> <source-folder>
<label>ccm-calendar (Source)</label> <label>ccm-calendar (Source)</label>
<type>java</type> <type>java</type>
@ -337,6 +343,12 @@
<location>ccm-forum-categorised/src</location> <location>ccm-forum-categorised/src</location>
<encoding>UTF-8</encoding> <encoding>UTF-8</encoding>
</source-folder> </source-folder>
<source-folder>
<label>ccm-navigation (Source)</label>
<type>java</type>
<location>ccm-navigation/src</location>
<encoding>UTF-8</encoding>
</source-folder>
<source-folder> <source-folder>
<label>ccm-portalserver (Source)</label> <label>ccm-portalserver (Source)</label>
<type>java</type> <type>java</type>
@ -367,12 +379,24 @@
<location>ccm-portlet-motd/src</location> <location>ccm-portlet-motd/src</location>
<encoding>UTF-8</encoding> <encoding>UTF-8</encoding>
</source-folder> </source-folder>
<source-folder>
<label>ccm-shortcuts (Source)</label>
<type>java</type>
<location>ccm-shortcuts/src</location>
<encoding>UTF-8</encoding>
</source-folder>
<source-folder> <source-folder>
<label>ccm-simplesurvey (Source)</label> <label>ccm-simplesurvey (Source)</label>
<type>java</type> <type>java</type>
<location>ccm-simplesurvey/src</location> <location>ccm-simplesurvey/src</location>
<encoding>UTF-8</encoding> <encoding>UTF-8</encoding>
</source-folder> </source-folder>
<source-folder>
<label>ccm-subsite (Source)</label>
<type>java</type>
<location>ccm-subsite/src</location>
<encoding>UTF-8</encoding>
</source-folder>
<source-folder> <source-folder>
<label>ccm-themedirector (Source)</label> <label>ccm-themedirector (Source)</label>
<type>java</type> <type>java</type>
@ -439,12 +463,6 @@
<location>ccm-ldn-importer/src</location> <location>ccm-ldn-importer/src</location>
<encoding>UTF-8</encoding> <encoding>UTF-8</encoding>
</source-folder> </source-folder>
<source-folder>
<label>ccm-ldn-navigation (Source)</label>
<type>java</type>
<location>ccm-ldn-navigation/src</location>
<encoding>UTF-8</encoding>
</source-folder>
<source-folder> <source-folder>
<label>ccm-ldn-rss (Source)</label> <label>ccm-ldn-rss (Source)</label>
<type>java</type> <type>java</type>
@ -457,18 +475,6 @@
<location>ccm-ldn-search/src</location> <location>ccm-ldn-search/src</location>
<encoding>UTF-8</encoding> <encoding>UTF-8</encoding>
</source-folder> </source-folder>
<source-folder>
<label>ccm-ldn-shortcuts (Source)</label>
<type>java</type>
<location>ccm-ldn-shortcuts/src</location>
<encoding>UTF-8</encoding>
</source-folder>
<source-folder>
<label>ccm-ldn-subsite (Source)</label>
<type>java</type>
<location>ccm-ldn-subsite/src</location>
<encoding>UTF-8</encoding>
</source-folder>
<source-folder> <source-folder>
<label>ccm-ldn-terms (Source)</label> <label>ccm-ldn-terms (Source)</label>
<type>java</type> <type>java</type>
@ -518,21 +524,9 @@
<encoding>UTF-8</encoding> <encoding>UTF-8</encoding>
</source-folder> </source-folder>
<source-folder> <source-folder>
<label>ccm-zes-aplaws (Source)</label> <label>ccm-sci-bundle (Source)</label>
<type>java</type> <type>java</type>
<location>ccm-zes-aplaws/src</location> <location>ccm-sci-bundle/src</location>
<encoding>UTF-8</encoding>
</source-folder>
<source-folder>
<label>ccm-zes-aplaws (Web)</label>
<type>java</type>
<location>ccm-zes-aplaws/web</location>
<encoding>UTF-8</encoding>
</source-folder>
<source-folder>
<label>ccm-sci-bundles (Source)</label>
<type>java</type>
<location>ccm-sci-bundles/src</location>
<encoding>UTF-8</encoding> <encoding>UTF-8</encoding>
</source-folder> </source-folder>
<source-folder> <source-folder>
@ -772,6 +766,10 @@
<label>ccm-bookmarks (Source)</label> <label>ccm-bookmarks (Source)</label>
<location>ccm-bookmarks/src</location> <location>ccm-bookmarks/src</location>
</source-folder> </source-folder>
<source-folder style="packages">
<label>ccm-bundle (Source)</label>
<location>ccm-bundle/src</location>
</source-folder>
<source-folder style="packages"> <source-folder style="packages">
<label>ccm-calendar (Source)</label> <label>ccm-calendar (Source)</label>
<location>ccm-calendar/src</location> <location>ccm-calendar/src</location>
@ -800,6 +798,10 @@
<label>ccm-forum-categorised (Source)</label> <label>ccm-forum-categorised (Source)</label>
<location>ccm-forum-categorised/src</location> <location>ccm-forum-categorised/src</location>
</source-folder> </source-folder>
<source-folder style="packages">
<label>ccm-navigation (Source)</label>
<location>ccm-navigation/src</location>
</source-folder>
<source-folder style="packages"> <source-folder style="packages">
<label>ccm-portalserver (Source)</label> <label>ccm-portalserver (Source)</label>
<location>ccm-portalserver/src</location> <location>ccm-portalserver/src</location>
@ -820,10 +822,18 @@
<label>ccm-portlet-motd (Source)</label> <label>ccm-portlet-motd (Source)</label>
<location>ccm-portlet-motd/src</location> <location>ccm-portlet-motd/src</location>
</source-folder> </source-folder>
<source-folder style="packages">
<label>ccm-shortcuts (Source)</label>
<location>ccm-shortcuts/src</location>
</source-folder>
<source-folder style="packages"> <source-folder style="packages">
<label>ccm-simplesurvey (Source)</label> <label>ccm-simplesurvey (Source)</label>
<location>ccm-simplesurvey/src</location> <location>ccm-simplesurvey/src</location>
</source-folder> </source-folder>
<source-folder style="packages">
<label>ccm-subsite (Source)</label>
<location>ccm-subsite/src</location>
</source-folder>
<source-folder style="packages"> <source-folder style="packages">
<label>ccm-themedirector (Source)</label> <label>ccm-themedirector (Source)</label>
<location>ccm-themedirector/src</location> <location>ccm-themedirector/src</location>
@ -868,10 +878,6 @@
<label>ccm-ldn-importer (Source)</label> <label>ccm-ldn-importer (Source)</label>
<location>ccm-ldn-importer/src</location> <location>ccm-ldn-importer/src</location>
</source-folder> </source-folder>
<source-folder style="packages">
<label>ccm-ldn-navigation (Source)</label>
<location>ccm-ldn-navigation/src</location>
</source-folder>
<source-folder style="packages"> <source-folder style="packages">
<label>ccm-ldn-rss (Source)</label> <label>ccm-ldn-rss (Source)</label>
<location>ccm-ldn-rss/src</location> <location>ccm-ldn-rss/src</location>
@ -880,14 +886,6 @@
<label>ccm-ldn-search (Source)</label> <label>ccm-ldn-search (Source)</label>
<location>ccm-ldn-search/src</location> <location>ccm-ldn-search/src</location>
</source-folder> </source-folder>
<source-folder style="packages">
<label>ccm-ldn-shortcuts (Source)</label>
<location>ccm-ldn-shortcuts/src</location>
</source-folder>
<source-folder style="packages">
<label>ccm-ldn-subsite (Source)</label>
<location>ccm-ldn-subsite/src</location>
</source-folder>
<source-folder style="packages"> <source-folder style="packages">
<label>ccm-ldn-terms (Source)</label> <label>ccm-ldn-terms (Source)</label>
<location>ccm-ldn-terms/src</location> <location>ccm-ldn-terms/src</location>
@ -929,8 +927,8 @@
<location>ccm-zes-aplaws/web</location> <location>ccm-zes-aplaws/web</location>
</source-folder> </source-folder>
<source-folder style="packages"> <source-folder style="packages">
<label>ccm-sci-bundles (Source)</label> <label>ccm-sci-bundle (Source)</label>
<location>ccm-sci-bundles/src</location> <location>ccm-sci-bundle/src</location>
</source-folder> </source-folder>
<source-folder style="packages"> <source-folder style="packages">
<label>ccm-sci-publications (Source)</label> <label>ccm-sci-publications (Source)</label>
@ -1005,6 +1003,7 @@
<package-root>ccm-cms-types-xmlfeed/src</package-root> <package-root>ccm-cms-types-xmlfeed/src</package-root>
<package-root>ccm-auth-http/src</package-root> <package-root>ccm-auth-http/src</package-root>
<package-root>ccm-bookmarks/src</package-root> <package-root>ccm-bookmarks/src</package-root>
<package-root>ccm-bundle/src</package-root>
<package-root>ccm-calendar/src</package-root> <package-root>ccm-calendar/src</package-root>
<package-root>ccm-docmgr/src</package-root> <package-root>ccm-docmgr/src</package-root>
<package-root>ccm-docrepo/src</package-root> <package-root>ccm-docrepo/src</package-root>
@ -1012,12 +1011,15 @@
<package-root>ccm-formbuilder-pdf/src</package-root> <package-root>ccm-formbuilder-pdf/src</package-root>
<package-root>ccm-forum/src</package-root> <package-root>ccm-forum/src</package-root>
<package-root>ccm-forum-categorised/src</package-root> <package-root>ccm-forum-categorised/src</package-root>
<package-root>ccm-navigation/src</package-root>
<package-root>ccm-portalserver/src</package-root> <package-root>ccm-portalserver/src</package-root>
<package-root>ccm-portalworkspace/src</package-root> <package-root>ccm-portalworkspace/src</package-root>
<package-root>ccm-portlet-bookmarks/src</package-root> <package-root>ccm-portlet-bookmarks/src</package-root>
<package-root>ccm-portlet-latestnews/src</package-root> <package-root>ccm-portlet-latestnews/src</package-root>
<package-root>ccm-portlet-motd/src</package-root> <package-root>ccm-portlet-motd/src</package-root>
<package-root>ccm-shortcuts/src</package-root>
<package-root>ccm-simplesurvey/src</package-root> <package-root>ccm-simplesurvey/src</package-root>
<package-root>ccm-subsite/src</package-root>
<package-root>ccm-themedirector/src</package-root> <package-root>ccm-themedirector/src</package-root>
<package-root>ccm-user-preferences/src</package-root> <package-root>ccm-user-preferences/src</package-root>
<package-root>ccm-weblog/src</package-root> <package-root>ccm-weblog/src</package-root>
@ -1029,11 +1031,8 @@
<package-root>ccm-ldn-freeform/src</package-root> <package-root>ccm-ldn-freeform/src</package-root>
<package-root>ccm-ldn-image-step/src</package-root> <package-root>ccm-ldn-image-step/src</package-root>
<package-root>ccm-ldn-importer/src</package-root> <package-root>ccm-ldn-importer/src</package-root>
<package-root>ccm-ldn-navigation/src</package-root>
<package-root>ccm-ldn-rss/src</package-root> <package-root>ccm-ldn-rss/src</package-root>
<package-root>ccm-ldn-search/src</package-root> <package-root>ccm-ldn-search/src</package-root>
<package-root>ccm-ldn-shortcuts/src</package-root>
<package-root>ccm-ldn-subsite/src</package-root>
<package-root>ccm-ldn-terms/src</package-root> <package-root>ccm-ldn-terms/src</package-root>
<package-root>ccm-ldn-types-contact/src</package-root> <package-root>ccm-ldn-types-contact/src</package-root>
<package-root>ccm-ldn-types-esdservice/src</package-root> <package-root>ccm-ldn-types-esdservice/src</package-root>
@ -1044,7 +1043,7 @@
<package-root>ccm-shp-aplaws/web</package-root> <package-root>ccm-shp-aplaws/web</package-root>
<package-root>ccm-zes-aplaws/src</package-root> <package-root>ccm-zes-aplaws/src</package-root>
<package-root>ccm-zes-aplaws/web</package-root> <package-root>ccm-zes-aplaws/web</package-root>
<package-root>ccm-sci-bundles/src</package-root> <package-root>ccm-sci-bundle/src</package-root>
<package-root>ccm-sci-publications/src</package-root> <package-root>ccm-sci-publications/src</package-root>
<package-root>ccm-sci-types-organization/src</package-root> <package-root>ccm-sci-types-organization/src</package-root>
<package-root>ccm-sci-types-organizationwithpublications/src</package-root> <package-root>ccm-sci-types-organizationwithpublications/src</package-root>