code: def _patch_sources(self):
      apply_conandata_patches(self)
      if "7.0.0" <= Version(self.version) < "10.0.0":
          for filename in glob.glob(
              os.path.join(
                  self.source_folder,
                  "cpp",
                  "cmake_modules",
                  "Find*.cmake",
              )
          ):
              if os.path.basename(filename) not in [
                  "FindArrow.cmake",
                  "FindArrowCUDA.cmake",
                  "FindArrowDataset.cmake",
                  "FindArrowFlight.cmake",
                  "FindArrowFlightSql.cmake",
                  "FindArrowFlightTesting.cmake",
                  "FindArrowPython.cmake",
                  "FindArrowPythonFlight.cmake",
                  "FindArrowSubstrait.cmake",
                  "FindArrowTesting.cmake",
                  "FindGandiva.cmake",
                  "FindParquet.cmake",
                  "FindPlasma.cmake",
              ]:
                  os.remove(filename)
  
imports: from conan import ConanFile
  from conan.errors import ConanInvalidConfiguration
  from conan.tools.microsoft import is_msvc_static_runtime, is_msvc, check_min_vs
  from conan.tools.files import export_conandata_patches, apply_conandata_patches, get, copy, rmdir
  from conan.tools.build import check_min_cppstd, cross_building
  from conan.tools.scm import Version
  from conan.tools.cmake import CMake, CMakeDeps, CMakeToolchain, cmake_layout
  import os
  import glob
label_desc: Use image node_id 29 for calling the ArrowConan obj's underlying member method code with example usage: obj._patch_sources() without return types