MCPcopy Create free account
hub / github.com/FirebirdSQL/firebird / createPlugin

Method createPlugin

src/jrd/jrd.cpp:434–452  ·  view source on GitHub ↗

IPluginFactory implementation

Source from the content-addressed store, hash-verified

432public:
433 // IPluginFactory implementation
434 IPluginBase* createPlugin(CheckStatusWrapper* status, IPluginConfig* factoryParameter)
435 {
436 try
437 {
438 if (getUnloadDetector()->unloadStarted())
439 {
440 Arg::Gds(isc_att_shut_engine).raise();
441 }
442
443 IPluginBase* p = FB_NEW JProvider(factoryParameter);
444 p->addRef();
445 return p;
446 }
447 catch (const Firebird::Exception& ex)
448 {
449 ex.stuffException(status);
450 }
451 return NULL;
452 }
453};
454
455static Static<EngineFactory> engineFactory;

Callers 1

factoryMethod · 0.45

Calls 7

getUnloadDetectorFunction · 0.85
GdsClass · 0.85
JProviderClass · 0.85
unloadStartedMethod · 0.80
raiseMethod · 0.45
addRefMethod · 0.45
stuffExceptionMethod · 0.45

Tested by

no test coverage detected