ae16870b2c
...and the gperf being used no longer emits "register" in C++ code.
Unlike Clang with -Wdynamic-exception-spec ignored, at least GCC 7.2
-std=gnu++17 always makes dynamic exception specs hard errors, which would cause
errors both when building StaticLibrary_libcmis and when including
libcmis/libcmis.hxx in ucb/source/ucp/cmis/. So patch away all dynamic
exception specifications from all external/libcmis include files indirectly
included via libcmis/libcmis.hxx, and (to silence the remaining dynamic
exception specifications in the innards of external/libcmis, which I did not
feel like also patching away) build StaticLibrary_libcmis as C++03 if necessary,
and wait for upstream libcmis to eventually be ported to C++17.
And external/firebird needs to be built with CXXFLAGS_CXX11 (which amounts to
C++17 with this patch) since 9206a08ada
"Upgrade
to ICU 60.1", so the relevant dynamic exception specifications had to be patched
away from its innards.
Change-Id: I3a0c9ec83c7c1d413559459631970f69ab977f31
Reviewed-on: https://gerrit.libreoffice.org/43851
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
412 lines
17 KiB
Text
412 lines
17 KiB
Text
--- src/libcmis/allowable-actions.cxx
|
|
+++ src/libcmis/allowable-actions.cxx
|
|
@@ -62,7 +62,7 @@
|
|
}
|
|
}
|
|
|
|
- ObjectAction::Type ObjectAction::parseType( string type ) throw ( Exception )
|
|
+ ObjectAction::Type ObjectAction::parseType( string type )
|
|
{
|
|
Type value = DeleteObject;
|
|
if ( type == "canDeleteObject" )
|
|
--- src/libcmis/allowable-actions.hxx
|
|
+++ src/libcmis/allowable-actions.hxx
|
|
@@ -92,7 +92,7 @@
|
|
/** Parses the permission name into one of the enum values or throws
|
|
an exception for invalid input strings.
|
|
*/
|
|
- static Type parseType( std::string type ) throw ( Exception );
|
|
+ static Type parseType( std::string type );
|
|
|
|
};
|
|
|
|
--- src/libcmis/document.hxx
|
|
+++ src/libcmis/document.hxx
|
|
@@ -56,7 +56,7 @@
|
|
|
|
@return the parents folder if any.
|
|
*/
|
|
- virtual std::vector< boost::shared_ptr< Folder > > getParents( ) throw ( Exception ) = 0;
|
|
+ virtual std::vector< boost::shared_ptr< Folder > > getParents( ) = 0;
|
|
|
|
/** Get the content stream without using a temporary file.
|
|
|
|
@@ -74,7 +74,7 @@
|
|
guaranteed.
|
|
*/
|
|
virtual boost::shared_ptr< std::istream > getContentStream( std::string streamId = std::string( ) )
|
|
- throw ( Exception ) = 0;
|
|
+ = 0;
|
|
|
|
/** Set or replace the content stream of the document.
|
|
|
|
@@ -88,7 +88,7 @@
|
|
capability.
|
|
*/
|
|
virtual void setContentStream( boost::shared_ptr< std::ostream > os, std::string contentType,
|
|
- std::string filename, bool overwrite = true ) throw ( Exception ) = 0;
|
|
+ std::string filename, bool overwrite = true ) = 0;
|
|
|
|
/** Get the content mime type.
|
|
*/
|
|
@@ -107,12 +107,12 @@
|
|
|
|
\return the Private Working Copy document
|
|
*/
|
|
- virtual boost::shared_ptr< Document > checkOut( ) throw ( Exception ) = 0;
|
|
+ virtual boost::shared_ptr< Document > checkOut( ) = 0;
|
|
|
|
/** Cancels the checkout if the document is a private working copy, or
|
|
throws an exception.
|
|
*/
|
|
- virtual void cancelCheckout( ) throw ( Exception ) = 0;
|
|
+ virtual void cancelCheckout( ) = 0;
|
|
|
|
/** Check in the private working copy and create a new version or throw
|
|
an exception.
|
|
@@ -131,9 +131,9 @@
|
|
virtual boost::shared_ptr< Document > checkIn( bool isMajor, std::string comment,
|
|
const std::map< std::string, PropertyPtr >& properties,
|
|
boost::shared_ptr< std::ostream > stream,
|
|
- std::string contentType, std::string fileName ) throw ( Exception ) = 0;
|
|
+ std::string contentType, std::string fileName ) = 0;
|
|
|
|
- virtual std::vector< boost::shared_ptr< Document > > getAllVersions( ) throw ( Exception ) = 0;
|
|
+ virtual std::vector< boost::shared_ptr< Document > > getAllVersions( ) = 0;
|
|
|
|
// virtual methods form Object
|
|
virtual std::vector< std::string > getPaths( );
|
|
--- src/libcmis/folder.cxx
|
|
+++ src/libcmis/folder.cxx
|
|
@@ -40,7 +40,7 @@
|
|
return paths;
|
|
}
|
|
|
|
- libcmis::FolderPtr Folder::getFolderParent( ) throw ( libcmis::Exception )
|
|
+ libcmis::FolderPtr Folder::getFolderParent( )
|
|
{
|
|
if ( getAllowableActions( ).get() && !getAllowableActions()->isAllowed( libcmis::ObjectAction::GetFolderParent ) )
|
|
throw libcmis::Exception( string( "GetFolderParent not allowed on node " ) + getId() );
|
|
--- src/libcmis/folder.hxx
|
|
+++ src/libcmis/folder.hxx
|
|
@@ -59,20 +59,20 @@
|
|
|
|
virtual std::vector< std::string > getPaths( );
|
|
|
|
- virtual ::boost::shared_ptr< Folder > getFolderParent( ) throw ( Exception );
|
|
- virtual std::vector< ObjectPtr > getChildren( ) throw ( Exception ) = 0;
|
|
+ virtual ::boost::shared_ptr< Folder > getFolderParent( );
|
|
+ virtual std::vector< ObjectPtr > getChildren( ) = 0;
|
|
virtual std::string getParentId( );
|
|
virtual std::string getPath( );
|
|
|
|
virtual bool isRootFolder( );
|
|
|
|
virtual ::boost::shared_ptr< Folder > createFolder( const std::map< std::string, PropertyPtr >& properties )
|
|
- throw ( libcmis::Exception ) = 0;
|
|
+ = 0;
|
|
virtual ::boost::shared_ptr< Document > createDocument( const std::map< std::string, PropertyPtr >& properties,
|
|
- boost::shared_ptr< std::ostream > os, std::string contentType, std::string fileName ) throw ( Exception ) = 0;
|
|
+ boost::shared_ptr< std::ostream > os, std::string contentType, std::string fileName ) = 0;
|
|
|
|
virtual std::vector< std::string > removeTree( bool allVersion = true, UnfileObjects::Type unfile = UnfileObjects::Delete,
|
|
- bool continueOnError = false ) throw ( Exception ) = 0;
|
|
+ bool continueOnError = false ) = 0;
|
|
|
|
virtual std::string toString( );
|
|
};
|
|
--- src/libcmis/object.cxx
|
|
+++ src/libcmis/object.cxx
|
|
@@ -226,7 +226,6 @@
|
|
}
|
|
|
|
ObjectPtr Object::addSecondaryType( string id, PropertyPtrMap properties )
|
|
- throw ( Exception )
|
|
{
|
|
// First make sure the cmis:secondaryObjectTypeIds property can be defined
|
|
map< string, PropertyTypePtr >& propertyTypes = getTypeDescription( )->
|
|
@@ -253,7 +252,7 @@
|
|
return updateProperties( newProperties );
|
|
}
|
|
|
|
- ObjectPtr Object::removeSecondaryType( string id ) throw ( Exception )
|
|
+ ObjectPtr Object::removeSecondaryType( string id )
|
|
{
|
|
// First make sure the cmis:secondaryObjectTypeIds property can be defined
|
|
map< string, PropertyTypePtr >& propertyTypes = getTypeDescription( )->
|
|
@@ -297,12 +296,12 @@
|
|
return m_typeDescription;
|
|
}
|
|
|
|
- vector< RenditionPtr> Object::getRenditions( string /*filter*/ ) throw ( Exception )
|
|
+ vector< RenditionPtr> Object::getRenditions( string /*filter*/ )
|
|
{
|
|
return m_renditions;
|
|
}
|
|
|
|
- string Object::getThumbnailUrl( ) throw ( Exception )
|
|
+ string Object::getThumbnailUrl( )
|
|
{
|
|
string url;
|
|
vector< RenditionPtr > renditions = getRenditions( );
|
|
--- src/libcmis/object.hxx
|
|
+++ src/libcmis/object.hxx
|
|
@@ -129,8 +129,7 @@
|
|
*/
|
|
virtual boost::shared_ptr< Object > addSecondaryType(
|
|
std::string id,
|
|
- PropertyPtrMap properties )
|
|
- throw ( Exception );
|
|
+ PropertyPtrMap properties );
|
|
|
|
/** Convenience function removing a secondary type from the object.
|
|
|
|
@@ -154,8 +153,7 @@
|
|
to throw a constraint exception if it doesn't allow the
|
|
operation.
|
|
*/
|
|
- virtual boost::shared_ptr< Object > removeSecondaryType( std::string id )
|
|
- throw ( Exception );
|
|
+ virtual boost::shared_ptr< Object > removeSecondaryType( std::string id );
|
|
|
|
/** Gives access to the properties of the object.
|
|
|
|
@@ -179,8 +177,7 @@
|
|
\attention
|
|
The streamId of the rendition is used in getContentStream( )
|
|
*/
|
|
- virtual std::vector< RenditionPtr> getRenditions( std::string filter = std::string( ) )
|
|
- throw ( Exception );
|
|
+ virtual std::vector< RenditionPtr> getRenditions( std::string filter = std::string( ) );
|
|
virtual AllowableActionsPtr getAllowableActions( ) { return m_allowableActions; }
|
|
|
|
/** Update the object properties and return the updated object.
|
|
@@ -191,21 +188,21 @@
|
|
are still two different instances to ease memory handling.
|
|
*/
|
|
virtual boost::shared_ptr< Object > updateProperties(
|
|
- const PropertyPtrMap& properties ) throw ( Exception ) = 0;
|
|
+ const PropertyPtrMap& properties ) = 0;
|
|
|
|
virtual ObjectTypePtr getTypeDescription( );
|
|
|
|
/** Reload the data from the server.
|
|
*/
|
|
- virtual void refresh( ) throw ( Exception ) = 0;
|
|
+ virtual void refresh( ) = 0;
|
|
virtual time_t getRefreshTimestamp( ) { return m_refreshTimestamp; }
|
|
|
|
- virtual void remove( bool allVersions = true ) throw ( Exception ) = 0;
|
|
+ virtual void remove( bool allVersions = true ) = 0;
|
|
|
|
- virtual void move( boost::shared_ptr< Folder > source, boost::shared_ptr< Folder > destination ) throw ( Exception ) = 0;
|
|
+ virtual void move( boost::shared_ptr< Folder > source, boost::shared_ptr< Folder > destination ) = 0;
|
|
|
|
|
|
- virtual std::string getThumbnailUrl( ) throw ( Exception );
|
|
+ virtual std::string getThumbnailUrl( );
|
|
|
|
/** Dump the object as a string for debugging or display purpose.
|
|
*/
|
|
--- src/libcmis/object-type.cxx
|
|
+++ src/libcmis/object-type.cxx
|
|
@@ -293,22 +293,22 @@
|
|
}
|
|
}
|
|
|
|
- void ObjectType::refresh( ) throw ( Exception )
|
|
+ void ObjectType::refresh( )
|
|
{
|
|
throw Exception( "ObjectType::refresh() shouldn't be called" );
|
|
}
|
|
|
|
- ObjectTypePtr ObjectType::getParentType( ) throw ( Exception )
|
|
+ ObjectTypePtr ObjectType::getParentType( )
|
|
{
|
|
throw Exception( "ObjectType::getParentType() shouldn't be called" );
|
|
}
|
|
|
|
- ObjectTypePtr ObjectType::getBaseType( ) throw ( Exception )
|
|
+ ObjectTypePtr ObjectType::getBaseType( )
|
|
{
|
|
throw Exception( "ObjectType::getBaseType() shouldn't be called" );
|
|
}
|
|
|
|
- vector< ObjectTypePtr > ObjectType::getChildren( ) throw ( Exception )
|
|
+ vector< ObjectTypePtr > ObjectType::getChildren( )
|
|
{
|
|
throw Exception( "ObjectType::getChildren() shouldn't be called" );
|
|
}
|
|
--- src/libcmis/object-type.hxx
|
|
+++ src/libcmis/object-type.hxx
|
|
@@ -94,7 +94,7 @@
|
|
This method needs to be implemented in subclasses or it will
|
|
do nothing
|
|
*/
|
|
- virtual void refresh( ) throw ( Exception );
|
|
+ virtual void refresh( );
|
|
virtual time_t getRefreshTimestamp( ) const;
|
|
|
|
std::string getId( ) const;
|
|
@@ -104,9 +104,9 @@
|
|
std::string getQueryName( ) const;
|
|
std::string getDescription( ) const;
|
|
|
|
- virtual boost::shared_ptr< ObjectType > getParentType( ) throw ( Exception );
|
|
- virtual boost::shared_ptr< ObjectType > getBaseType( ) throw ( Exception );
|
|
- virtual std::vector< boost::shared_ptr< ObjectType > > getChildren( ) throw ( Exception );
|
|
+ virtual boost::shared_ptr< ObjectType > getParentType( );
|
|
+ virtual boost::shared_ptr< ObjectType > getBaseType( );
|
|
+ virtual std::vector< boost::shared_ptr< ObjectType > > getChildren( );
|
|
|
|
/** Get the parent type id without extracting the complete parent type from
|
|
the repository. This is mainly provided for performance reasons.
|
|
--- src/libcmis/session-factory.cxx
|
|
+++ src/libcmis/session-factory.cxx
|
|
@@ -57,7 +57,7 @@
|
|
|
|
Session* SessionFactory::createSession( string bindingUrl, string username,
|
|
string password, string repository, bool noSslCheck,
|
|
- libcmis::OAuth2DataPtr oauth2, bool verbose ) throw ( Exception )
|
|
+ libcmis::OAuth2DataPtr oauth2, bool verbose )
|
|
{
|
|
Session* session = NULL;
|
|
|
|
@@ -138,7 +138,7 @@
|
|
}
|
|
|
|
vector< RepositoryPtr > SessionFactory::getRepositories( string bindingUrl,
|
|
- string username, string password, bool verbose ) throw ( Exception )
|
|
+ string username, string password, bool verbose )
|
|
{
|
|
vector< RepositoryPtr > repos;
|
|
|
|
--- src/libcmis/session-factory.hxx
|
|
+++ src/libcmis/session-factory.hxx
|
|
@@ -128,7 +128,7 @@
|
|
std::string password = std::string( ),
|
|
std::string repositoryId = std::string( ),
|
|
bool noSslCheck = false,
|
|
- OAuth2DataPtr oauth2 = OAuth2DataPtr(), bool verbose = false ) throw ( Exception );
|
|
+ OAuth2DataPtr oauth2 = OAuth2DataPtr(), bool verbose = false );
|
|
|
|
/**
|
|
Gets the informations of the repositories on the server.
|
|
@@ -142,7 +142,7 @@
|
|
static std::vector< RepositoryPtr > getRepositories( std::string bindingUrl,
|
|
std::string username = std::string( ),
|
|
std::string password = std::string( ),
|
|
- bool verbose = false ) throw ( Exception );
|
|
+ bool verbose = false );
|
|
};
|
|
}
|
|
|
|
--- src/libcmis/session.hxx
|
|
+++ src/libcmis/session.hxx
|
|
@@ -47,7 +47,7 @@
|
|
|
|
/** Get the current repository.
|
|
*/
|
|
- virtual RepositoryPtr getRepository( ) throw ( Exception ) = 0;
|
|
+ virtual RepositoryPtr getRepository( ) = 0;
|
|
|
|
virtual std::vector< RepositoryPtr > getRepositories( ) = 0;
|
|
|
|
@@ -61,27 +61,27 @@
|
|
|
|
/** Get the Root folder of the repository
|
|
*/
|
|
- virtual FolderPtr getRootFolder() throw ( Exception )= 0;
|
|
+ virtual FolderPtr getRootFolder() = 0;
|
|
|
|
/** Get a CMIS object from its ID.
|
|
*/
|
|
- virtual ObjectPtr getObject( std::string id ) throw ( Exception ) = 0;
|
|
+ virtual ObjectPtr getObject( std::string id ) = 0;
|
|
|
|
/** Get a CMIS object from one of its path.
|
|
*/
|
|
- virtual ObjectPtr getObjectByPath( std::string path ) throw ( Exception ) = 0;
|
|
+ virtual ObjectPtr getObjectByPath( std::string path ) = 0;
|
|
|
|
/** Get a CMIS folder from its ID.
|
|
*/
|
|
- virtual libcmis::FolderPtr getFolder( std::string id ) throw ( Exception ) = 0;
|
|
+ virtual libcmis::FolderPtr getFolder( std::string id ) = 0;
|
|
|
|
/** Get a CMIS object type from its ID.
|
|
*/
|
|
- virtual ObjectTypePtr getType( std::string id ) throw ( Exception ) = 0;
|
|
+ virtual ObjectTypePtr getType( std::string id ) = 0;
|
|
|
|
/** Get all the CMIS base object types known by the server.
|
|
*/
|
|
- virtual std::vector< ObjectTypePtr > getBaseTypes( ) throw ( Exception ) = 0;
|
|
+ virtual std::vector< ObjectTypePtr > getBaseTypes( ) = 0;
|
|
|
|
/** Enable or disable the SSL certificate verification.
|
|
|
|
--- src/libcmis/xml-utils.cxx
|
|
+++ src/libcmis/xml-utils.cxx
|
|
@@ -361,7 +361,6 @@
|
|
string getXmlNodeAttributeValue( xmlNodePtr node,
|
|
const char* attributeName,
|
|
const char* defaultValue )
|
|
- throw ( Exception )
|
|
{
|
|
xmlChar* xmlStr = xmlGetProp( node, BAD_CAST( attributeName ) );
|
|
if ( xmlStr == NULL )
|
|
@@ -450,7 +449,7 @@
|
|
return str;
|
|
}
|
|
|
|
- bool parseBool( string boolStr ) throw ( Exception )
|
|
+ bool parseBool( string boolStr )
|
|
{
|
|
bool value = false;
|
|
if ( boolStr == "true" || boolStr == "1" )
|
|
@@ -462,7 +461,7 @@
|
|
return value;
|
|
}
|
|
|
|
- long parseInteger( string intStr ) throw ( Exception )
|
|
+ long parseInteger( string intStr )
|
|
{
|
|
char* end;
|
|
errno = 0;
|
|
@@ -481,7 +480,7 @@
|
|
return value;
|
|
}
|
|
|
|
- double parseDouble( string doubleStr ) throw ( Exception )
|
|
+ double parseDouble( string doubleStr )
|
|
{
|
|
char* end;
|
|
errno = 0;
|
|
--- src/libcmis/xml-utils.hxx
|
|
+++ src/libcmis/xml-utils.hxx
|
|
@@ -132,8 +132,7 @@
|
|
*/
|
|
std::string getXmlNodeAttributeValue( xmlNodePtr node,
|
|
const char* attributeName,
|
|
- const char* defaultValue = NULL )
|
|
- throw ( Exception );
|
|
+ const char* defaultValue = NULL );
|
|
|
|
/** Parse a xsd:dateTime string and return the corresponding UTC posix time.
|
|
*/
|
|
@@ -142,11 +141,11 @@
|
|
/// Write a UTC time object to an xsd:dateTime string
|
|
std::string writeDateTime( boost::posix_time::ptime time );
|
|
|
|
- bool parseBool( std::string str ) throw ( Exception );
|
|
+ bool parseBool( std::string str );
|
|
|
|
- long parseInteger( std::string str ) throw ( Exception );
|
|
+ long parseInteger( std::string str );
|
|
|
|
- double parseDouble( std::string str ) throw ( Exception );
|
|
+ double parseDouble( std::string str );
|
|
|
|
/** Trim spaces on the left and right of a string.
|
|
*/
|