dbaccess: ODF export: set "Version" property on target Storage
... like SfxObjectShell::SetupStorage() does, and not on the property set that is passed to the XML export filters where it probably does nothing. Change-Id: I21da1b92fc921eb47e492169e69ef15ac2f0e19d
This commit is contained in:
parent
d1846cd8d4
commit
f60b61b2cf
@ -1615,7 +1615,6 @@ void ODatabaseDocument::impl_writeStorage_throw( const Reference< XStorage >& _r
|
|||||||
{ OUString("BaseURI"), 0, ::getCppuType( (OUString *)0 ),beans::PropertyAttribute::MAYBEVOID, 0 },
|
{ OUString("BaseURI"), 0, ::getCppuType( (OUString *)0 ),beans::PropertyAttribute::MAYBEVOID, 0 },
|
||||||
{ OUString("StreamName"), 0, ::getCppuType( (OUString *)0 ),beans::PropertyAttribute::MAYBEVOID, 0 },
|
{ OUString("StreamName"), 0, ::getCppuType( (OUString *)0 ),beans::PropertyAttribute::MAYBEVOID, 0 },
|
||||||
{ OUString("UsePrettyPrinting"), 0, ::getCppuType((sal_Bool*)0), beans::PropertyAttribute::MAYBEVOID, 0},
|
{ OUString("UsePrettyPrinting"), 0, ::getCppuType((sal_Bool*)0), beans::PropertyAttribute::MAYBEVOID, 0},
|
||||||
{ OUString("Version"), 0, ::getCppuType( (OUString *)0 ),beans::PropertyAttribute::MAYBEVOID, 0 },
|
|
||||||
{ OUString(), 0, css::uno::Type(), 0, 0 }
|
{ OUString(), 0, css::uno::Type(), 0, 0 }
|
||||||
};
|
};
|
||||||
uno::Reference< beans::XPropertySet > xInfoSet( comphelper::GenericPropertySet_CreateInstance( new comphelper::PropertySetInfo( aExportInfoMap ) ) );
|
uno::Reference< beans::XPropertySet > xInfoSet( comphelper::GenericPropertySet_CreateInstance( new comphelper::PropertySetInfo( aExportInfoMap ) ) );
|
||||||
@ -1625,24 +1624,6 @@ void ODatabaseDocument::impl_writeStorage_throw( const Reference< XStorage >& _r
|
|||||||
if ( aSaveOpt.IsSaveRelFSys() )
|
if ( aSaveOpt.IsSaveRelFSys() )
|
||||||
xInfoSet->setPropertyValue("BaseURI", uno::makeAny(_rMediaDescriptor.getOrDefault("URL",OUString())));
|
xInfoSet->setPropertyValue("BaseURI", uno::makeAny(_rMediaDescriptor.getOrDefault("URL",OUString())));
|
||||||
|
|
||||||
OUString aVersion;
|
|
||||||
SvtSaveOptions::ODFDefaultVersion nDefVersion = aSaveOpt.GetODFDefaultVersion();
|
|
||||||
|
|
||||||
// older versions can not have this property set, it exists only starting from ODF1.2
|
|
||||||
if ( nDefVersion >= SvtSaveOptions::ODFVER_012 )
|
|
||||||
aVersion = ODFVER_012_TEXT;
|
|
||||||
|
|
||||||
if ( !aVersion.isEmpty() )
|
|
||||||
{
|
|
||||||
try
|
|
||||||
{
|
|
||||||
xInfoSet->setPropertyValue( "Version" , uno::makeAny( aVersion ) );
|
|
||||||
}
|
|
||||||
catch( const uno::Exception& )
|
|
||||||
{
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
sal_Int32 nArgsLen = aDelegatorArguments.getLength();
|
sal_Int32 nArgsLen = aDelegatorArguments.getLength();
|
||||||
aDelegatorArguments.realloc(nArgsLen+1);
|
aDelegatorArguments.realloc(nArgsLen+1);
|
||||||
aDelegatorArguments[nArgsLen++] <<= xInfoSet;
|
aDelegatorArguments[nArgsLen++] <<= xInfoSet;
|
||||||
@ -1650,6 +1631,26 @@ void ODatabaseDocument::impl_writeStorage_throw( const Reference< XStorage >& _r
|
|||||||
Reference< XPropertySet > xProp( _rxTargetStorage, UNO_QUERY_THROW );
|
Reference< XPropertySet > xProp( _rxTargetStorage, UNO_QUERY_THROW );
|
||||||
xProp->setPropertyValue( INFO_MEDIATYPE, makeAny( (OUString)MIMETYPE_OASIS_OPENDOCUMENT_DATABASE ) );
|
xProp->setPropertyValue( INFO_MEDIATYPE, makeAny( (OUString)MIMETYPE_OASIS_OPENDOCUMENT_DATABASE ) );
|
||||||
|
|
||||||
|
OUString aVersion;
|
||||||
|
SvtSaveOptions::ODFDefaultVersion const nDefVersion =
|
||||||
|
aSaveOpt.GetODFDefaultVersion();
|
||||||
|
// older versions can not have this property set,
|
||||||
|
// it exists only starting from ODF1.2
|
||||||
|
if (nDefVersion >= SvtSaveOptions::ODFVER_012)
|
||||||
|
aVersion = ODFVER_012_TEXT;
|
||||||
|
|
||||||
|
if (!aVersion.isEmpty())
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
xProp->setPropertyValue("Version" , uno::makeAny(aVersion));
|
||||||
|
}
|
||||||
|
catch (const uno::Exception& e)
|
||||||
|
{
|
||||||
|
SAL_WARN("dbaccess", "exception setting Version: " << e.Message);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
Reference< XComponent > xComponent( *const_cast< ODatabaseDocument* >( this ), UNO_QUERY_THROW );
|
Reference< XComponent > xComponent( *const_cast< ODatabaseDocument* >( this ), UNO_QUERY_THROW );
|
||||||
|
|
||||||
Sequence< PropertyValue > aMediaDescriptor;
|
Sequence< PropertyValue > aMediaDescriptor;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user