db.py 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. #----------------------------------------------------------------------
  2. # Copyright (c) 1999-2001, Digital Creations, Fredericksburg, VA, USA
  3. # and Andrew Kuchling. All rights reserved.
  4. #
  5. # Redistribution and use in source and binary forms, with or without
  6. # modification, are permitted provided that the following conditions are
  7. # met:
  8. #
  9. # o Redistributions of source code must retain the above copyright
  10. # notice, this list of conditions, and the disclaimer that follows.
  11. #
  12. # o Redistributions in binary form must reproduce the above copyright
  13. # notice, this list of conditions, and the following disclaimer in
  14. # the documentation and/or other materials provided with the
  15. # distribution.
  16. #
  17. # o Neither the name of Digital Creations nor the names of its
  18. # contributors may be used to endorse or promote products derived
  19. # from this software without specific prior written permission.
  20. #
  21. # THIS SOFTWARE IS PROVIDED BY DIGITAL CREATIONS AND CONTRIBUTORS *AS
  22. # IS* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
  23. # TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
  24. # PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL DIGITAL
  25. # CREATIONS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
  26. # INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
  27. # BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
  28. # OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
  29. # ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR
  30. # TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE
  31. # USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
  32. # DAMAGE.
  33. #----------------------------------------------------------------------
  34. # This module is just a placeholder for possible future expansion, in
  35. # case we ever want to augment the stuff in _db in any way. For now
  36. # it just simply imports everything from _db.
  37. import sys
  38. absolute_import = (sys.version_info[0] >= 3)
  39. if not absolute_import :
  40. if __name__.startswith('bsddb3.') :
  41. # import _pybsddb binary as it should be the more recent version from
  42. # a standalone pybsddb addon package than the version included with
  43. # python as bsddb._bsddb.
  44. from _pybsddb import *
  45. from _pybsddb import __version__
  46. else:
  47. from _bsddb import *
  48. from _bsddb import __version__
  49. else :
  50. # Because this syntaxis is not valid before Python 2.5
  51. if __name__.startswith('bsddb3.') :
  52. exec("from ._pybsddb import *")
  53. exec("from ._pybsddb import __version__")
  54. else :
  55. exec("from ._bsddb import *")
  56. exec("from ._bsddb import __version__")