Closed andyward closed 1 year ago
Remaining work is to integrate with https://github.com/xBimTeam/XbimEssentials/pull/483 - removing static Logger and introducing common ServiceProvider for xbim (which can replace the Xbim.Geometry.Engine.Interop/Internal/XbimGeometryInternalServices.cs)
Aim here is to support building an
XbimGeometryEngine
with both DI , as well as traditional constructor approaches.Generally cleaned up the construction and config approach and fixed up issues arising from use of a static . We now use an internal DI IServiceProvider when one is not used externally.
Introduced a configurable approach for constructing a geometry Engine.
Without CI:
with DI:
TODO:
IGeometryRegistration
interface intoIXbimGeometryEngine
. DONENote: the Assembly Resolver approach is not needed for Geometry as we load the native DLL explicitly, and is no longer registered. But the class remains in case we need to reintroduce due to unforseen sideeffects (as this was a global resolver)