pub fn take(&self) -> Option<T> {
        let result = self.inner.lock().unwrap().take();

        if result.is_some() {
            tracing::info!(
                "Resource {} has been taken",
                std::any::type_name::<Unique<T>>()
            );
        }

        result
    }
Takes the resource from the container.
Will return `None` if the resource was already taken.
core/lib/node_framework/src/resource/unique.rs