Commit Graph

1026 Commits

Author SHA1 Message Date
5e21a413c7 cppuhelper: retrofit std::exception into overriding exception specs
Change-Id: I56e32131b7991ee9948ce46765632eb823d463b3
2014-02-26 18:22:20 +01:00
35e44118b8 Remove visual noise from stoc
Change-Id: I19edfb2796298c4870124d0d1e9488974a010bb8
Reviewed-on: https://gerrit.libreoffice.org/8316
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
2014-02-26 07:47:23 -06:00
4a9347fa32 Replace deprecated std::auto_ptr with boost::scoped_ptr
Change-Id: I8e11ffe888aac8887c4c0875c41de51f343debae
2014-02-25 16:33:15 +09:00
0ce0c369aa Remove unneccessary comments
Change-Id: I939160ae72fecbe3d4a60ce755730bd4c38497fb
Reviewed-on: https://gerrit.libreoffice.org/8182
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
2014-02-23 03:38:49 +00:00
bd20500cf3 Simplify access to theCoreReflection singleton
Change-Id: I9901991a320b87895230a92095c9c7d3109380a6
2014-02-07 12:03:03 +01:00
9e77c2fb7c Remove UNOIDL "array" and "union" vaporware remnants
...and deprecate what cannot be removed for compatibility.

Change-Id: I1ea335af775b867b468b8285113631167729a92a
2014-01-31 10:15:47 +01:00
612dac063a bool improvements
Change-Id: I0dc09b7a6ee2849bd0c2ffc31be45f81cd2c15ee
2014-01-29 11:08:32 +01:00
48fc43550a bool improvements
Change-Id: Ic29ea184cb40f6f49313ac2ff1abb4a37246d5bd
2014-01-28 20:26:22 +01:00
e357c93e7b coverity#440504 Dereference before null check
Change-Id: Ia7c817ca0b002279bee8699e4940c57937657ad4
2014-01-28 11:29:17 +00:00
e3133ae237 Let C++ inline functions return bool instead of sal_Bool
...to improve diagnosing misuses of boolean expressions in client code (cf.
compilerplugins/clang/implicitboolconversion.cxx).  This change should be
transparent to client code.

Missing overloads of insert() for bool have been added to OStringBuffer and
OUStringBuffer (which required dropping one !VALID_CONVERSION check that would
now pick that overload, but would be flagged by
compilerplugins/clang/pointertobool.cxx).

Change-Id: I2d64cd923b8f47bfaa31e753def6515c29a3f8c9
2014-01-23 18:43:53 +01:00
c2c530da69 Introduce static inline cppu::acquire(), and make use of that.
This is much better approach compared to the callback function, as it allows
passing arguments to the c++ constructor directly, while still allowing some
additional initialization after having acquired the instance.

Change-Id: I5a0f981915dd58f1522ee6054e53a3550b29d624
2014-01-22 15:09:28 +01:00
f278397787 Change _get_implementation()'s not to do initialization directly.
Many of the initalizations (in eg. framework) have to be done on an
acquire()'d object, so instead of doing the initialization directly, return
the initialization member function back to the createInstance() /
createInstanceWithContext() / ... and perform the initialization there.

As a sideeffect, I belive the calling initialize() from servicemanager is not
that much a hack any more - whoever converts the implementation to be
constructor-base has the choice to provide the callback, or still initialize
through XInitialization, where the callback is preferred by servicemanager
when it exists.

Change-Id: I8a87b75c54c1441ca0f184967d31ff4902fc4081
2014-01-21 21:25:22 +01:00
9eefbbe5de bool improvements
Change-Id: I9e5e77ad2c29ccdae1a794b7a0223858d8a662a6
2014-01-21 18:24:05 +01:00
a3f32769fc Fix bogus mass-conversion equalsAsciiL -> startsWith
3af99e4d59d89c343965a928681a30f36b1007d2 "convert equalsAsciiL calls to
startsWith calls" should rather have converted to oprator ==.

Change-Id: Id4a8836c5d6d570e54661c40be7214632e202b21
2014-01-21 15:54:52 +01:00
721e30bf54 bool improvements
Change-Id: I00e7cdadc4e66fa9656c0a63f4ef18d3673b8e8a
2014-01-21 13:24:30 +01:00
306efefe22 Minimize the constructor functions to a bare minimum.
Most of the constructors are supposed to be only a call of

  new TheInstance(arguments)

or an equivalent; so let's just change the constructor caller accordingly, to
accept unacquired new instance.

If there are exceptions that need to do more heavy lifting, they do not have
to use the constructor feature, or there can be a wrapper for the real
implementation, doing the additional work in their (C++) constructor.

Change-Id: I035c378778aeda60d15af4e56ca3761c586d5ded
2014-01-20 17:37:40 +01:00
73eca35b0a Unify ctor functions for component implementations.
There is no need to use different styles for writing the same thing.
It also makes it easier in future to use search & replace.
But of course, there are also some more complicated functions.

Change-Id: I773da20378af0e0d5a27689d3903df7063fb8ac0
2014-01-18 17:02:40 +01:00
a700ce8e2b Unify ctor functions to have _get_implementation suffix.
Change-Id: I07fe0671d0633ef9480a4f3431df6a64c7902db8
2014-01-15 15:12:01 +01:00
4337a0664f Use const& arguments parameter for ctor functions.
Change-Id: I19ce8bd1a23123ac9a62a7fc95cd54fea5315221
2014-01-15 08:51:27 +01:00
382b013275 Some ConfigurationProvider -> theDefaultProvider simplifications
Change-Id: I7c25cd94f8a1ca339f7423c26f21f13c7a68906d
2014-01-08 09:10:29 +01:00
82625bb98e remove unnecessary sal_Unicode casts in OUStringBuffer::append calls
Convert code like:
    buf.append( static_cast<sal_Unicode>('!') );
to:
    buf.append( '!' );

Change-Id: Iacb03a61de65a895540940953b49620677b3d051
2014-01-07 09:43:37 +02:00
ae3a0c8da5 Add .component <implementation constructor="..." feature
...to directly call constructor functions of ComponentContext-based C++
implementations of (non-single-instance) UNO services.  The case where these
calls would need to be bridged across different environments (e.g., from gcc3
to gcc3:affine) is not yet implemented.

bootstrap.component and expwrap.component are adapted accordingly as a proof-of-
concept (which had previously been adapted to use the prefix="direct" feature,
which may become unnecessary again in the end, depending on how to handle
single-instance services/singletons).  More to follow.

Change-Id: I18682d75bcd29d3d427e31331b4ce8161dbb846d
2013-12-19 08:48:56 +01:00
e20f27f0a0 bootstrap component: Split into implementation functions.
Change-Id: I91cb0177edd79485eab885e995e79b1a19a769d5
2013-12-18 07:15:49 +01:00
9ed364774c Adapt all (non-extension, SharedLibrary) .components to environment="..."
Change-Id: I56f38bd786f3a026cb2908f28540dc9c4003af83
2013-12-17 11:06:00 +01:00
909b27df48 remove unnecessary double calls to OUString constructor
Change-Id: Ib2690e3ec9987b97363687b61fe8ddae4ace9058
2013-12-17 11:49:04 +02:00
08fe82e59c Remove unnecessary use of OUString constructor in + expressions
Convert code like
  aFilename =  OUString::number(nFilePostfixCount) + OUString(".bmp");
to
  aFilename =  OUString::number(nFilePostfixCount) + ".bmp";

Change-Id: I03f513ad1c8ec8846b2afbdc67ab12525ed07e50
2013-12-17 11:49:03 +02:00
a83b2af9ab Clean-up uno/lbnames.h
Change-Id: I4bd729499aa8be58f04194656e35c1f79d5d4919
2013-12-16 21:43:12 +01:00
2f7b329297 [API CHANGE] remove cppu::loadSharedLibComponentFactory w/ rPrefix again
...it was never meant to be called by client code anyway and is no longer needed
to be exposed since the global service manager implementation moved to
cppuhelper.

Change-Id: If2d0510b2364084d36edeb156a3459d9b8aeb983
2013-12-13 15:13:57 +01:00
80612512fe remove unnecessary casts
It is no longer necessary to cast to sal_Unicode when calling
OUStringBuffer::append

Change-Id: Iab3d1e12eef472cfe11f1d0d1969ca404091dd7d
2013-12-12 13:15:25 +02:00
fb84710151 simplify - use OUString::startsWith where possible
Convert code like
   if( !aStr.isEmpty() && aStr[0] == 'x' )
to
   if( aStr.startsWith("x") )

Change-Id: Iabc3a44ed3be2d29eed876e0eeef212ccd271edf
2013-12-12 13:15:24 +02:00
64f57612e3 Catching std::bad_alloc in UNO implementations no longer necessary
...since 0bc89aac4c64bb833e387657f680e194c26aef97 "cppumaker: Allow UNO
interface functions to throw std::exception."

Change-Id: Ia28f02ea10d45267fd951e80da01ffdfdb420885
2013-11-28 13:15:39 +01:00
73342dbb82 remove unnecessary RTL_CONSTASCII_STRINGPARAM
A final pass through the code, converting code to use the new
OUString and OString methods that can detect string literals.

Change-Id: Ifa6382335e5650a1c67e52006b26354e0692c710
2013-11-22 08:07:19 +02:00
071c3f3e93 remove unnecessary use of OUString constructor in equalsIgnoreAsciiCase
Convert code like:
    sType.equalsIgnoreAsciiCase(OUString("VIEW"));
to:
    sType.equalsIgnoreAsciiCase("VIEW");

Change-Id: I6fb47e6a83b561c7e5a25da76b63606a3174858d
2013-11-22 08:07:18 +02:00
52bbd9cc00 remove unnecessary RTL_CONSTASCII_STRINGPARAM in appendAscii calls
Convert code like:
    aStrBuf.appendAscii( RTL_CONSTASCII_STRINGPARAM( "ln(x)" ));
to:
    aStrBuf.append( "ln(x)" );
which compiles down to the same code.

Change-Id: I24c7cb45ceb32fd7cd6ec7ed203c2a5d746f1c5c
2013-11-20 10:07:32 +02:00
3af99e4d59 convert equalsAsciiL calls to startsWith calls
Convert code like:
    aStr.equalsAsciiL( RTL_CONSTASCII_STRINGPARAM( "ActiveConnection" ) )
to
    aStr.startsWith( "ActiveConnection" )
which compiles down to the same machine code.

Change-Id: Id4b0c5e0f9afe716a468d3afc70374699848dc33
2013-11-20 10:07:31 +02:00
610b2b94b3 remove unnecessary use of OUString constructor when assigning
change code like
   aStr = OUString("xxxx");
to
   aStr = "xxxx";

Change-Id: Ib981a5cc735677ec5dba76ef9279a107d22e99d4
2013-11-19 10:29:31 +02:00
2c35fff7ec remove most use of RTL_CONSTASCII_USTRINGPARAM macro
This is largely unnecessary when working with OUString

Change-Id: I3cf4d68357a43665d01162ef4a2d5346a45da9be
2013-11-19 10:29:30 +02:00
d366c9b20e remove unnecessary sal_Unicode casts in various places
Change-Id: Ibf04062ca86ed866202d748c3b62a210d30ed6ec
2013-11-14 08:17:32 +02:00
cd30747b74 remove unnecessary use of OUString constructor in STOC module
Change-Id: I980223cedb6d0054ef71cbd81691f70a24f506ad
2013-11-08 14:50:59 +02:00
ee5661ecd3 fdo#54938: Adapt supportsService implementations..
to cppu::supportsService

Change-Id: I0b03d3910f094f2183bf9859db9d5bcaf35d1f14
Reviewed-on: https://gerrit.libreoffice.org/6370
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
Tested-by: Stephan Bergmann <sbergman@redhat.com>
2013-10-22 10:28:10 +00:00
a242f53c04 Clean up stoc::uriproc::supportsService
Change-Id: I1f324aae149e766d4755dc06ac5793c218ed5cf7
2013-10-20 22:41:00 +02:00
68c3efccbe Some clean-up
Change-Id: Iea0daab5dbabefe119def6b07db73a573b703d32
2013-10-20 22:36:21 +02:00
79502678d0 Clean-up std::bad_alloc handling
...post 0bc89aac4c64bb833e387657f680e194c26aef97 "cppumaker: Allow UNO interface functions to throw std::exception."

Change-Id: I5fede822d279c3c758103192a813447bb4906679
2013-10-20 22:22:05 +02:00
22edbdf53c No need to support "prefix" in DllComponentLoader
...which is only used for extension components, and only while they are live-
deployed into an soffice process and thus offloaded to an additional uno
process (which never happens for bundled extensions), cf.
cppuhelper::ServiceManager::loadImplementation
(cppuhelper/source/servicemanager.cxx), and (at least non-bundled) extensions
should never use the "prefix" feature anyway, cf.
3bafe5f5f529f6539363c5a291dd13ef1e2cbbde "Extension shared library components
must not use the 'prefix' feature."

Change-Id: I19c4b71029eccf0c4f3d4481ea5f3542205f685e
2013-10-11 15:52:29 +02:00
e036d4b706 Spell "indices" correctly
Change-Id: I63b1de195bf2f3f8bfd185181f48b1520cdd849f
2013-10-02 21:57:42 +03:00
8ece4abb6f -Werror,-Wunused-function
Change-Id: I68d030642fc3f396f7d95602847725bb8299bebf
2013-10-02 16:49:27 +02:00
d2e1dd559f [API CHANGE] Stricter requirements for shlib.hxx function arguments
rLibName -> uri must be an (absolute file) URI, rPath must be empty, and xKey
must be null in loadSharedLibComponentFactory.  While incompatible in theory,
these functions should only be called internally, anyway.

Change-Id: Iab144b199e4e7db62358283efec6877a5da19bab
2013-10-01 01:15:30 +02:00
f301032307 IllegalArgumentException is a RuntimeException now
Change-Id: I929da9300cc02da114907841ad8805d1227f3f79
2013-10-01 00:56:18 +02:00
98e20a37ba Mark as const
Change-Id: I65a05b59da6dbc2d37a55129c54ca0f322702364
2013-08-22 14:02:31 +09:00
43b9898081 sal_Bool to bool
Change-Id: I4ab448a461a9fe37ba18838357d371f71b0a496c
2013-08-22 14:02:31 +09:00