Kaydet (Commit) 8f9af2d0 authored tarafından Oliver-Rainer Wittmann's avatar Oliver-Rainer Wittmann

122397: activate migration of AOO 3.4.x/OOo 3.x user profiles (incl. migration…

122397: activate migration of AOO 3.4.x/OOo 3.x user profiles (incl. migration of wordbooks, basic macros and user-installed extensions)
üst ce829e86
......@@ -5,7 +5,7 @@ dt desktop\prj get - all dt_prj NULL
dt desktop\res get - all dt_res NULL
dt desktop\source\app nmake - all dt_app dt_migr dt_inc dt_dp_misc dt_dp_gui NULL
dt desktop\source\migration nmake - all dt_migr dt_inc NULL
dt desktop\source\migration\services nmake - all dt_services dt_inc dt_dp_misc NULL
dt desktop\source\migration\services nmake - all dt_services dt_inc dt_dp_misc dt_dp_gui NULL
dt desktop\source\so_comp nmake - all dt_so_comp dt_inc NULL
dt desktop\source\offacc nmake - all dt_offac dt_inc NULL
dt desktop\source\splash nmake - all dt_spl dt_migr dt_inc NULL
......
......@@ -143,7 +143,6 @@ mkdir: %_DEST%\xml%_EXT%\registry\spool\org\openoffice\Office\Jobs
..\%__SRC%\misc\deployment.component %_DEST%\xml%_EXT%\deployment.component
..\%__SRC%\misc\deploymentgui.component %_DEST%\xml%_EXT%\deploymentgui.component
..\%__SRC%\misc\migrationoo2.component %_DEST%\xml%_EXT%\migrationoo2.component
..\%__SRC%\misc\migrationoo3.component %_DEST%\xml%_EXT%\migrationoo3.component
..\%__SRC%\misc\offacc.component %_DEST%\xml%_EXT%\offacc.component
..\%__SRC%\misc\socomp.component %_DEST%\xml%_EXT%\socomp.component
..\%__SRC%\misc\spl.component %_DEST%\xml%_EXT%\spl.component
......@@ -768,26 +768,35 @@ void MigrationImpl::copyConfig() {
for (Components::const_iterator i(comps.begin()); i != comps.end(); ++i) {
if (!i->second.includedPaths.empty()) {
rtl::OUStringBuffer buf(m_aInfo.userdata);
buf.appendAscii(RTL_CONSTASCII_STRINGPARAM("/user/registry/data"));
sal_Int32 n = 0;
do {
rtl::OUString seg(i->first.getToken(0, '.', n));
rtl::OUString enc(
rtl::Uri::encode(
seg, rtl_UriCharClassPchar, rtl_UriEncodeStrict,
RTL_TEXTENCODING_UTF8));
if (enc.getLength() == 0 && seg.getLength() != 0) {
OSL_TRACE(
("configuration migration component %s ignored (cannot"
" be encoded as file path)"),
rtl::OUStringToOString(
i->first, RTL_TEXTENCODING_UTF8).getStr());
goto next;
}
buf.append(sal_Unicode('/'));
buf.append(enc);
} while (n >= 0);
buf.appendAscii(RTL_CONSTASCII_STRINGPARAM(".xcu"));
if ( m_aInfo.productname.equals( OUString::createFromAscii("OpenOffice.org 3") ) )
{
// OpenOffice.org 3 configuration file
buf.appendAscii(RTL_CONSTASCII_STRINGPARAM("/user/registrymodifications.xcu"));
}
else
{
// OpenOffice.org 2 configuration files
buf.appendAscii(RTL_CONSTASCII_STRINGPARAM("/user/registry/data"));
sal_Int32 n = 0;
do {
rtl::OUString seg(i->first.getToken(0, '.', n));
rtl::OUString enc(
rtl::Uri::encode(
seg, rtl_UriCharClassPchar, rtl_UriEncodeStrict,
RTL_TEXTENCODING_UTF8));
if (enc.getLength() == 0 && seg.getLength() != 0) {
OSL_TRACE(
("configuration migration component %s ignored (cannot"
" be encoded as file path)"),
rtl::OUStringToOString(
i->first, RTL_TEXTENCODING_UTF8).getStr());
goto next;
}
buf.append(sal_Unicode('/'));
buf.append(enc);
} while (n >= 0);
buf.appendAscii(RTL_CONSTASCII_STRINGPARAM(".xcu"));
}
configuration::Update::get(
comphelper::getProcessComponentContext())->
insertModificationXcuFile(
......
......@@ -27,7 +27,7 @@
#include "cppuhelper/implementationentry.hxx"
#include "basicmigration.hxx"
#include "wordbookmigration.hxx"
//#include "extensionmigration.hxx"
#include "oo3extensionmigration.hxx"
extern "C"
{
......@@ -44,11 +44,11 @@ extern "C"
migration::WordbookMigration_getSupportedServiceNames, ::cppu::createSingleComponentFactory,
0, 0
},
// {
// migration::ExtensionMigration_create, migration::ExtensionMigration_getImplementationName,
// migration::ExtensionMigration_getSupportedServiceNames, ::cppu::createSingleComponentFactory,
// 0, 0
// },
{
migration::OO3ExtensionMigration_create, migration::OO3ExtensionMigration_getImplementationName,
migration::OO3ExtensionMigration_getSupportedServiceNames, ::cppu::createSingleComponentFactory,
0, 0
},
{ 0, 0, 0, 0, 0, 0 }
};
......
......@@ -34,8 +34,10 @@ COMP1TYPELIST = migrationoo2
LIBTARGET=NO
# --- Settings -----------------------------------------------------
.INCLUDE : ..$/..$/deployment/inc/dp_misc.mk
PRJINC=..$/..
.INCLUDE : settings.mk
.INCLUDE : ..$/..$/deployment/inc/dp_misc.mk
.INCLUDE : ..$/..$/deployment/inc/dp_gui.mk
DLLPRE =
# ------------------------------------------------------------------
......@@ -48,21 +50,22 @@ SLOFILES= \
$(SLO)$/basicmigration.obj \
$(SLO)$/wordbookmigration.obj \
$(SLO)$/autocorrmigration.obj \
$(SLO)$/oo3extensionmigration.obj \
$(SLO)$/cexportsoo3.obj
$(SLO)$/oo3extensionmigration.obj
SHL1OBJS= \
$(SLO)$/jvmfwk.obj \
$(SLO)$/cexports.obj \
$(SLO)$/basicmigration.obj \
$(SLO)$/wordbookmigration.obj \
$(SLO)$/autocorrmigration.obj
$(SLO)$/autocorrmigration.obj \
$(SLO)$/oo3extensionmigration.obj
SHL1TARGET=$(TARGET)
SHL1VERSIONMAP = $(SOLARENV)/src/component.map
SHL1STDLIBS= \
$(DEPLOYMENTMISCLIB) \
$(DEPLOYMENTGUILIB) \
$(CPPULIB) \
$(CPPUHELPERLIB) \
$(SALLIB) \
......@@ -80,49 +83,10 @@ SHL1DEF=$(MISC)$/$(SHL1TARGET).def
DEF1NAME=$(SHL1TARGET)
COMP2TYPELIST = migrationoo3
.IF "$(OS)" == "OS2"
SHL2TARGET=migroo3
.ELSE
SHL2TARGET=migrationoo3.uno
.ENDIF
SHL2VERSIONMAP = $(SOLARENV)/src/component.map
SHL2OBJS= \
$(SLO)$/cexportsoo3.obj \
$(SLO)$/oo3extensionmigration.obj
SHL2STDLIBS= \
$(DEPLOYMENTMISCLIB) \
$(CPPULIB) \
$(CPPUHELPERLIB) \
$(SALLIB) \
$(UCBHELPERLIB) \
$(UNOTOOLSLIB) \
$(TOOLSLIB) \
$(I18NISOLANGLIB) \
$(JVMFWKLIB) \
$(XMLSCRIPTLIB) \
SHL2DEPN=
SHL2IMPLIB=imigrationoo3
#SHL2LIBS=$(SLB)$/$(SHL2TARGET).lib
SHL2DEF=$(MISC)$/$(SHL2TARGET).def
DEF2NAME=$(SHL2TARGET)
# --- Targets ------------------------------------------------------
.INCLUDE : target.mk
ALLTAR : $(MISC)/migrationoo3.component
$(MISC)/migrationoo3.component .ERRREMOVE : \
$(SOLARENV)/bin/createcomponent.xslt migrationoo3.component
$(XSLTPROC) --nonet --stringparam uri \
'$(COMPONENTPREFIX_BASIS_NATIVE)$(SHL2TARGETN:f)' -o $@ \
$(SOLARENV)/bin/createcomponent.xslt migrationoo3.component
ALLTAR : $(MISC)/migrationoo2.component
$(MISC)/migrationoo2.component .ERRREMOVE : \
......
......@@ -24,10 +24,13 @@
<component loader="com.sun.star.loader.SharedLibrary"
xmlns="http://openoffice.org/2010/uno-components">
<implementation name="com.sun.star.comp.desktop.migration.Basic">
<service name="com.sun.star.migration.Basic"/>
</implementation>
<implementation name="com.sun.star.comp.desktop.migration.Wordbooks">
<service name="com.sun.star.migration.Wordbooks"/>
</implementation>
<implementation name="com.sun.star.comp.desktop.migration.Basic">
<service name="com.sun.star.migration.Basic"/>
</implementation>
<implementation name="com.sun.star.comp.desktop.migration.Wordbooks">
<service name="com.sun.star.migration.Wordbooks"/>
</implementation>
<implementation name="com.sun.star.comp.desktop.migration.OOo3Extensions">
<service name="com.sun.star.migration.Extensions"/>
</implementation>
</component>
......@@ -46,6 +46,9 @@
#include <com/sun/star/beans/NamedValue.hpp>
#include <com/sun/star/deployment/ExtensionManager.hpp>
#include <com/sun/star/deployment/VersionException.hpp>
#include <dp_gui_handleversionexception.hxx>
using namespace ::com::sun::star;
using namespace ::com::sun::star::uno;
......@@ -517,6 +520,14 @@ void TmpRepositoryCommandEnv::handle(
bool approve = true;
bool abort = false;
deployment::VersionException verExc;
if ( xRequest->getRequest() >>= verExc )
{
// user interaction, if an extension is already been installed.
approve = dp_gui::handleVersionException( verExc );
abort = !approve;
}
// select:
uno::Sequence< Reference< task::XInteractionContinuation > > conts(
xRequest->getContinuations() );
......
......@@ -784,7 +784,7 @@
<node oor:name="SupportedVersions">
<node oor:name="OpenOffice.org2+StarOffice8+StarSuite8" oor:op="replace">
<prop oor:name="Priority">
<value>10</value>
<value>20</value>
</prop>
<prop oor:name="VersionIdentifiers">
<value oor:separator=",">OpenOffice.org 2=openoffice.org2,StarOffice 8=staroffice8,StarSuite 8=starsuite8</value>
......@@ -808,11 +808,6 @@
</value>
</prop>
</node>
<node oor:name="Deployment" oor:op="replace">
<prop oor:name="MigrationService">
<value>com.sun.star.migration.Extensions</value>
</prop>
</node>
<node oor:name="Inet" oor:op="replace">
<prop oor:name="IncludedNodes">
<value>/org.openoffice.Inet</value>
......@@ -936,11 +931,6 @@
<value>/org.openoffice.Office.Security</value>
</prop>
</node>
<node oor:name="UI" oor:op="replace">
<prop oor:name="IncludedNodes">
<value>/org.openoffice.Office.UI/ColorScheme</value>
</prop>
</node>
<node oor:name="Writer" oor:op="replace">
<prop oor:name="IncludedNodes">
<value>
......@@ -954,6 +944,181 @@
</node>
</node>
</node>
<node oor:name="OpenOffice.org3" oor:op="replace">
<prop oor:name="Priority">
<value>10</value>
</prop>
<prop oor:name="VersionIdentifiers">
<value oor:separator=",">OpenOffice.org 3=openoffice.org/3</value>
</prop>
<node oor:name="MigrationSteps">
<node oor:name="Datasources" oor:op="replace">
<prop oor:name="IncludedFiles">
<value>.*/database/biblio/biblio\.dbf</value>
</prop>
<prop oor:name="ExcludedFiles">
</prop>
<prop oor:name="IncludedNodes">
<value>/org.openoffice.Office.DataAccess</value>
</prop>
<prop oor:name="ExcludedNodes">
<value>
<it>/org.openoffice.Office.DataAccess/Bibliography</it>
<it>/org.openoffice.Office.DataAccess/ConnectionPool</it>
<it>/org.openoffice.Office.DataAccess/DataSources</it>
<it>/org.openoffice.Office.DataAccess/DriverManager</it>
</value>
</prop>
</node>
<node oor:name="Deployment" oor:op="replace">
<prop oor:name="MigrationService">
<value>com.sun.star.migration.Extensions</value>
</prop>
<prop oor:name="ExcludedExtensions">
<value>
<!-- presentation minimizer is integrated since AOO 4.0 -->
<it>com.sun.star.PresentationMinimizer-*</it>
<!-- presentation screen is integrated since AOO 4.0 -->
<it>com.sun.PresenterScreen-*</it>
</value>
</prop>
</node>
<node oor:name="Inet" oor:op="replace">
<prop oor:name="IncludedNodes">
<value>/org.openoffice.Inet</value>
</prop>
</node>
<node oor:name="Basic" oor:op="replace">
<prop oor:name="MigrationService">
<value>com.sun.star.migration.Basic</value>
</prop>
</node>
<node oor:name="UserProfile" oor:op="replace">
<prop oor:name="IncludedNodes">
<value>/org.openoffice.UserProfile</value>
</prop>
</node>
<node oor:name="Common" oor:op="replace">
<prop oor:name="IncludedFiles">
<value>
<it>.*/autotext/.*</it>
<it>.*/autocorr/.*</it>
<it>.*/config/.*\.so[bcdegh]</it>
<it>.*/config/soffice.cfg/modules/.*/toolbar/custom.*\.xml</it>
<it>.*/config/soffice.cfg/modules/.*/images/.*</it>
<it>.*/gallery/.*</it>
<it>.*/template/.*</it>
</value>
</prop>
<prop oor:name="IncludedNodes">
<value>
<it>/org.openoffice.Office.Compatibility</it>
<it>/org.openoffice.Office.Custom</it>
<it>/org.openoffice.Office.Embedding</it>
<it>/org.openoffice.Office.Events</it>
<it>/org.openoffice.Office.ExtendedColorScheme</it>
<it>/org.openoffice.Office.Common/Accessibility</it>
<it>/org.openoffice.Office.Common/Accessibility/AutoDetectSystemHC</it>
<it>/org.openoffice.Office.Common/AsianLayout</it>
<it>/org.openoffice.Office.Common/AutoCorrect</it>
<it>/org.openoffice.Office.Common/Cache</it>
<it>/org.openoffice.Office.Common/DateFormat</it>
<it>/org.openoffice.Office.Common/ExternalMailer/Program</it>
<it>/org.openoffice.Office.Common/Filter</it>
<it>/org.openoffice.Office.Common/Font</it>
<it>/org.openoffice.Office.Common/Forms</it>
<it>/org.openoffice.Office.Common/Gallery</it>
<it>/org.openoffice.Office.Common/Help</it>
<it>/org.openoffice.Office.Common/History</it>
<it>/org.openoffice.Office.Common/I18N</it>
<it>/org.openoffice.Office.Common/InternalMSExport</it>
<it>/org.openoffice.Office.Common/Load</it>
<it>/org.openoffice.Office.Common/Misc/FormControlPilotsEnabled</it>
<it>/org.openoffice.Office.Common/Misc/PluginsEnabled</it>
<it>/org.openoffice.Office.Common/Misc/SymbolSet</it>
<it>/org.openoffice.Office.Common/Misc/UseSystemFileDialog</it>
<it>/org.openoffice.Office.Common/Misc/UseSystemPrintDialog</it>
<it>/org.openoffice.Office.Common/Misc/SymbolStyle</it>
<it>/org.openoffice.Office.Common/Passwords</it>
<it>/org.openoffice.Office.Common/Print/PrintingModifiesDocument</it>
<it>/org.openoffice.Office.Common/Print/Warning</it>
<it>/org.openoffice.Office.Common/Vectorize</it>
<it>/org.openoffice.Office.Common/Save</it>
<it>/org.openoffice.Office.Common/SearchOptions</it>
<it>/org.openoffice.Office.Common/Undo</it>
<it>/org.openoffice.Office.Common/View/Dialog/Dialog/MiddleMouseButton</it>
<it>/org.openoffice.Office.Common/View/Dialog/MousePositioning</it>
<it>/org.openoffice.Office.Common/View/Localization</it>
<it>/org.openoffice.Office.Common/View/Menu</it>
<it>/org.openoffice.Office.Common/_3D_Engine</it>
</value>
</prop>
<prop oor:name="ExcludedNodes">
<value>
<it>/org.openoffice.Office.Common/_3D_Engine/OpenGL</it>
<it>/org.openoffice.Office.Common/Help/Registration</it>
</value>
</prop>
</node>
<node oor:name="Calc" oor:op="replace">
<prop oor:name="IncludedNodes">
<value>/org.openoffice.Office.Calc</value>
</prop>
</node>
<node oor:name="Chart" oor:op="replace">
<prop oor:name="IncludedNodes">
<value>/org.openoffice.Office.Chart</value>
</prop>
</node>
<node oor:name="Draw" oor:op="replace">
<prop oor:name="IncludedNodes">
<value>/org.openoffice.Office.Draw</value>
</prop>
</node>
<node oor:name="Impress" oor:op="replace">
<prop oor:name="IncludedNodes">
<value>/org.openoffice.Office.Impress</value>
</prop>
</node>
<node oor:name="Labels" oor:op="replace">
<prop oor:name="IncludedNodes">
<value>/org.openoffice.Office.Labels</value>
</prop>
</node>
<node oor:name="Linguistic" oor:op="replace">
<prop oor:name="MigrationService">
<value>com.sun.star.migration.Wordbooks</value>
</prop>
<prop oor:name="IncludedNodes">
<value>/org.openoffice.Office.Linguistic</value>
</prop>
<prop oor:name="ExcludedNodes">
<value>/org.openoffice.Office.Linguistic/ServiceManager</value>
</prop>
</node>
<node oor:name="Math" oor:op="replace">
<prop oor:name="IncludedNodes">
<value>/org.openoffice.Office.Math</value>
</prop>
</node>
<node oor:name="Security" oor:op="replace">
<prop oor:name="IncludedNodes">
<value>/org.openoffice.Office.Security</value>
</prop>
</node>
<node oor:name="Writer" oor:op="replace">
<prop oor:name="IncludedNodes">
<value>
<it>/org.openoffice.Office.Writer</it>
<it>/org.openoffice.Office.WriterWeb</it>
</value>
</prop>
<prop oor:name="ExcludedNodes">
<value>/org.openoffice.Office.Writer/Wizard</value>
</prop>
</node>
</node>
</node>
</node>
</node>
</node>
</oor:component-data>
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment