Modul ccm-cms wird jetzt als new style legacy compatible application initialisiert. Update 6.6.1-6.6.2 erforderlich.
git-svn-id: https://svn.libreccm.org/ccm/trunk@908 8810af33-2d31-482b-a856-94f89814c4dfmaster
parent
c286cc5fdb
commit
f45285e98d
|
|
@ -0,0 +1,37 @@
|
|||
--
|
||||
-- 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_table_applications.sql pboy $
|
||||
|
||||
update applications
|
||||
set package_id = (select site_nodes.object_id
|
||||
from site_nodes
|
||||
where site_nodes.url = applications.primary_url)
|
||||
where application_type_id = (select application_types.application_type_id
|
||||
from application_types
|
||||
where object_type
|
||||
like 'com.arsdigita.cms.Workspace');
|
||||
|
||||
update applications
|
||||
set package_id = (select site_nodes.object_id
|
||||
from site_nodes
|
||||
where site_nodes.url = applications.primary_url)
|
||||
where application_type_id = (select application_types.application_type_id
|
||||
from application_types
|
||||
where object_type
|
||||
like 'com.arsdigita.cms.Service');
|
||||
|
||||
|
|
@ -0,0 +1,22 @@
|
|||
--
|
||||
-- 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: oracle-se-6.6.1-6.6.2.sql 293 2011-05-13 15:10:39Z pboy $
|
||||
|
||||
PROMPT Red Hat Enterprise CMS 6.6.1 -> 6.6.2 Upgrade Script (Oracle)
|
||||
|
||||
@@ ../default/upgrade/6.6.1-6.6.2/upd_table_applications.sql
|
||||
|
|
@ -0,0 +1,26 @@
|
|||
--
|
||||
-- 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/05/13 23:15:09 $
|
||||
|
||||
\echo Red Hat Enterprise CMS 6.6.1 -> 6.6.2 Upgrade Script (PostgreSQL)
|
||||
|
||||
begin;
|
||||
|
||||
\i ../default/upgrade/6.6.1-6.6.2/upd_table_applications.sql
|
||||
|
||||
commit;
|
||||
|
|
@ -36,16 +36,12 @@
|
|||
<version from="6.5.3" to="6.5.4">
|
||||
<script sql="ccm-cms/upgrade/::database::-6.5.3-6.5.4.sql"/>
|
||||
</version>
|
||||
|
||||
<version from="6.6.0" to="6.6.1">
|
||||
<script sql="ccm-cms/upgrade/::database::-6.6.0-6.6.1.sql"/>
|
||||
<script class="com.arsdigita.cms.upgrade.CreateGenericContentTypes"/>
|
||||
</version>
|
||||
<version from="6.6.1" to="6.6.2">
|
||||
<script class="com.arsdigita.cms.upgrade.AddNewStyleApplicationEntries"/>
|
||||
<!--
|
||||
<script sql="ccm-cms/upgrade/::database::-6.6.0-6.6.1.sql"/>
|
||||
-->
|
||||
<script sql="ccm-cms/upgrade/::database::-6.6.1-6.6.2.sql"/>
|
||||
</version>
|
||||
|
||||
</upgrade>
|
||||
|
|
|
|||
|
|
@ -170,12 +170,16 @@ public class Loader extends PackageLoader {
|
|||
// loadCMSPackageType();
|
||||
|
||||
// 2 - step 1b) Setup the Workspace package.
|
||||
loadWorkspacePackage(); // using old stype
|
||||
// loadWorkspacePackageNewStyle(); // using new style
|
||||
// loadWorkspacePackage(); // using old stype
|
||||
// new style:
|
||||
ApplicationType appType = loadWorkspaceApplicationType();
|
||||
setupDefaultWorkspaceApplicationInstance(appType);
|
||||
|
||||
// 3 - step 1c) Setup the CMS global services package.
|
||||
loadServicePackage(); // using olde style
|
||||
// loadServicePackageNewStyle(); // using new style
|
||||
// loadServicePackage(); // using olde style
|
||||
// new style:
|
||||
appType = loadServiceApplicationType();
|
||||
setupDefaultServiceApplicationInstance(appType);
|
||||
|
||||
// 4 - step 1d) Load the content-center page mappings
|
||||
// Wrong! Is Initializer task, must be done each startup, in
|
||||
|
|
@ -268,11 +272,12 @@ public class Loader extends PackageLoader {
|
|||
//
|
||||
// s_log.debug("Done creating the CMS package type.");
|
||||
// }
|
||||
/**
|
||||
* Loads and instantiates the Workspace package (content-center) in the
|
||||
* database using old style application.
|
||||
* Will be replaced by new style application in the migration process,
|
||||
*/
|
||||
// /**
|
||||
// * Loads and instantiates the Workspace package (content-center) in the
|
||||
// * database using old style application.
|
||||
// * Will be replaced by new style application in the migration process,
|
||||
// */
|
||||
/*
|
||||
private void loadWorkspacePackage() {
|
||||
s_log.debug("Creating CMS Workspace...");
|
||||
|
||||
|
|
@ -312,10 +317,12 @@ public class Loader extends PackageLoader {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
*/
|
||||
/**
|
||||
* Loads and instantiates the Workspace package (content-center) in the
|
||||
* database.
|
||||
* It is made public to be able to invoke it from the update script
|
||||
* (e.g. 6.6.1-6.6.2).
|
||||
*/
|
||||
public static ApplicationType loadWorkspaceApplicationType() {
|
||||
s_log.warn("Creating CMS Workspace...");
|
||||
|
|
@ -365,19 +372,20 @@ public class Loader extends PackageLoader {
|
|||
Workspace.PACKAGE_KEY, // url fragment
|
||||
Workspace.INSTANCE_NAME,// title
|
||||
null); // parent
|
||||
app.setDescription("The default CMS workspace instance.");
|
||||
app.save();
|
||||
s_log.warn("CMS Workspace instance created.");
|
||||
|
||||
s_log.debug("Done loading CMS Workspace.");
|
||||
}
|
||||
|
||||
/**
|
||||
* CMS Service application is used by the Content Management System as a
|
||||
* store for global resources and assets.
|
||||
* Using old style application, will be replaced by new style in the
|
||||
* migration process.
|
||||
*/
|
||||
private void loadServicePackage() {
|
||||
// /**
|
||||
// * CMS Service application is used by the Content Management System as a
|
||||
// * store for global resources and assets.
|
||||
// * Using old style application, will be replaced by new style in the
|
||||
// * migration process.
|
||||
// */
|
||||
/* private void loadServicePackage() {
|
||||
s_log.debug("Loading CMS Servce Package...");
|
||||
|
||||
try {
|
||||
|
|
@ -405,11 +413,12 @@ public class Loader extends PackageLoader {
|
|||
throw new ConfigError("Failed to initialize CMS global services package.");
|
||||
}
|
||||
}
|
||||
|
||||
*/
|
||||
/**
|
||||
* CMS Service application is used by the Content Management System as a
|
||||
* store for global resources and assets.
|
||||
*
|
||||
* It is made public to be able to invoke it from the update script
|
||||
* (e.g. 6.6.1-6.6.2).
|
||||
*/
|
||||
public static ApplicationType loadServiceApplicationType() {
|
||||
s_log.debug("Loading CMS Servce Package...");
|
||||
|
|
@ -458,6 +467,7 @@ public class Loader extends PackageLoader {
|
|||
Service.PACKAGE_KEY, // url fragment
|
||||
Service.INSTANCE_NAME,// title
|
||||
null); // parent
|
||||
app.setDescription("The default CMS service instance.");
|
||||
app.save();
|
||||
|
||||
s_log.debug("Done creating CMS Service Package.");
|
||||
|
|
|
|||
|
|
@ -19,7 +19,6 @@
|
|||
package com.arsdigita.cms.upgrade;
|
||||
|
||||
import com.arsdigita.cms.Loader;
|
||||
import com.arsdigita.kernel.Group;
|
||||
import com.arsdigita.kernel.Kernel;
|
||||
import com.arsdigita.kernel.KernelExcursion;
|
||||
import com.arsdigita.kernel.PackageInstance;
|
||||
|
|
@ -31,6 +30,8 @@ import com.arsdigita.packaging.Program;
|
|||
import com.arsdigita.persistence.Session;
|
||||
import com.arsdigita.persistence.SessionManager;
|
||||
import com.arsdigita.persistence.TransactionContext;
|
||||
import com.arsdigita.util.StringUtils;
|
||||
import com.arsdigita.web.Application;
|
||||
import com.arsdigita.web.ApplicationType;
|
||||
|
||||
import org.apache.commons.cli.CommandLine;
|
||||
|
|
@ -56,10 +57,12 @@ public class AddNewStyleApplicationEntries extends Program {
|
|||
private static Logger s_log = Logger.getLogger(CreateGenericContentTypes.class);
|
||||
|
||||
/**
|
||||
/* Constructor
|
||||
/* Constructor constructs a program object which initializes the CCM
|
||||
* runtime system and enables concatenation, so a following SQL script
|
||||
* may be executed.
|
||||
*/
|
||||
public AddNewStyleApplicationEntries() {
|
||||
super("AddNewStyleApplicationEntries", "1.0.0", "");
|
||||
super("AddNewStyleApplicationEntries", "1.0.0", "",true,true);
|
||||
}
|
||||
|
||||
|
||||
|
|
@ -86,10 +89,9 @@ public class AddNewStyleApplicationEntries extends Program {
|
|||
final TransactionContext tc = session.getTransactionContext();
|
||||
tc.beginTxn();
|
||||
|
||||
// experimental
|
||||
// Update CMS Workspace
|
||||
ApplicationType appType = null;
|
||||
appType = Loader.loadWorkspaceApplicationType();
|
||||
|
||||
// get corresponding package type
|
||||
PackageType packageType = appType.getPackageType();
|
||||
// get all installed instances
|
||||
|
|
@ -97,16 +99,45 @@ public class AddNewStyleApplicationEntries extends Program {
|
|||
.getInstances();
|
||||
PackageInstance aPackage = null ;
|
||||
Resource res = null;
|
||||
Application app = null;
|
||||
while ( allPackages.next() ) {
|
||||
aPackage = allPackages.getPackageInstance();
|
||||
res = Resource.createResource((ResourceType)appType,
|
||||
aPackage.getDisplayName(),
|
||||
null);
|
||||
res.setDescription("The default CMS workspace instance.");
|
||||
res.save();
|
||||
app = Application.retrieveApplication(res.getOID());
|
||||
app.setPath("/"+StringUtils.urlize(app.getTitle())+"/");
|
||||
// unfortunately there seems to be no way to set the
|
||||
// assoziation to PackageInstance. So we must do that by
|
||||
// SQL magic
|
||||
}
|
||||
|
||||
|
||||
// Update CMS Service
|
||||
appType = null;
|
||||
appType = Loader.loadServiceApplicationType();
|
||||
// get corresponding package type
|
||||
packageType = appType.getPackageType();
|
||||
// get all installed instances
|
||||
allPackages = packageType.getInstances();
|
||||
aPackage = null ;
|
||||
res = null;
|
||||
app = null;
|
||||
while ( allPackages.next() ) {
|
||||
aPackage = allPackages.getPackageInstance();
|
||||
res = Resource.createResource((ResourceType)appType,
|
||||
aPackage.getDisplayName(),
|
||||
null);
|
||||
res.setDescription("The default CMS service instance.");
|
||||
res.save();
|
||||
app = Application.retrieveApplication(res.getOID());
|
||||
app.setPath("/"+StringUtils.urlize(app.getTitle())+"/");
|
||||
// unfortunately there seems to be no way to set the
|
||||
// assoziation to PackageInstance. So we must do that by
|
||||
// SQL magic
|
||||
}
|
||||
|
||||
|
||||
tc.commitTxn();
|
||||
|
|
|
|||
Loading…
Reference in New Issue