-// Copyright (C) 2021 CEA/DEN, EDF R&D
+// Copyright (C) 2021-2022 CEA/DEN, EDF R&D
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Lesser General Public
return aCat;
}
+#include "SMESH_Gen_No_Session_i.hxx"
+
extern "C"
{ SMESH_I_EXPORT
PortableServer::ObjectId* SMESHEngine_factory( CORBA::ORB_ptr orb,
const char* instanceName,
const char* interfaceName )
{
- SMESH_Gen_Session_i* aSMESHGen = new SMESH_Gen_Session_i(orb, poa, contId, instanceName, interfaceName);
- return aSMESHGen->getId() ;
+ CORBA::Object_var o = poa->id_to_reference(*contId);
+ Engines::Container_var cont = Engines::Container::_narrow(o);
+ if(cont->is_SSL_mode())
+ {
+ SMESH_Gen_No_Session_i* aSMESHGen = new SMESH_Gen_No_Session_i(orb, poa, contId, instanceName, interfaceName);
+ return aSMESHGen->getId() ;
+ }
+ else
+ {
+ SMESH_Gen_Session_i* aSMESHGen = new SMESH_Gen_Session_i(orb, poa, contId, instanceName, interfaceName);
+ return aSMESHGen->getId() ;
+ }
}
}