cxx_log.cpp
上传用户:tsgydb
上传日期:2007-04-14
资源大小:10674k
文件大小:3k
源码类别:

MySQL数据库

开发平台:

Visual C++

  1. /*-
  2.  * See the file LICENSE for redistribution information.
  3.  *
  4.  * Copyright (c) 1997, 1998, 1999, 2000
  5.  * Sleepycat Software.  All rights reserved.
  6.  */
  7. #include "db_config.h"
  8. #ifndef lint
  9. static const char revid[] = "$Id: cxx_log.cpp,v 11.9 2000/09/21 15:05:45 dda Exp $";
  10. #endif /* not lint */
  11. #include <errno.h>
  12. #include "db_cxx.h"
  13. #include "cxx_int.h"
  14. ////////////////////////////////////////////////////////////////////////
  15. //                                                                    //
  16. //                            DbLog                                   //
  17. //                                                                    //
  18. ////////////////////////////////////////////////////////////////////////
  19. int DbEnv::log_archive(char **list[], u_int32_t flags,
  20.        db_malloc_fcn_type db_malloc_fcn)
  21. {
  22. int err;
  23. DB_ENV *env = unwrap(this);
  24. if ((err = ::log_archive(env, list, flags, db_malloc_fcn)) != 0) {
  25. DB_ERROR("DbEnv::log_archive", err, error_policy());
  26. return (err);
  27. }
  28. return (0);
  29. }
  30. int DbEnv::log_compare(const DbLsn *lsn0, const DbLsn *lsn1)
  31. {
  32. return (::log_compare(lsn0, lsn1));
  33. }
  34. int DbEnv::log_file(DbLsn *lsn, char *namep, size_t len)
  35. {
  36. int err;
  37. DB_ENV *env = unwrap(this);
  38. if ((err = ::log_file(env, lsn, namep, len)) != 0) {
  39. DB_ERROR("DbEnv::log_file", err, error_policy());
  40. return (err);
  41. }
  42. return (0);
  43. }
  44. int DbEnv::log_flush(const DbLsn *lsn)
  45. {
  46. int err;
  47. DB_ENV *env = unwrap(this);
  48. if ((err = ::log_flush(env, lsn)) != 0) {
  49. DB_ERROR("DbEnv::log_flush", err, error_policy());
  50. return (err);
  51. }
  52. return (0);
  53. }
  54. int DbEnv::log_get(DbLsn *lsn, Dbt *data, u_int32_t flags)
  55. {
  56. int err;
  57. DB_ENV *env = unwrap(this);
  58. if ((err = ::log_get(env, lsn, data, flags)) != 0) {
  59. DB_ERROR("DbEnv::log_get", err, error_policy());
  60. return (err);
  61. }
  62. return (0);
  63. }
  64. int DbEnv::log_put(DbLsn *lsn, const Dbt *data, u_int32_t flags)
  65. {
  66. int err = 0;
  67. DB_ENV *env = unwrap(this);
  68. if ((err = ::log_put(env, lsn, data, flags)) != 0) {
  69. DB_ERROR("DbEnv::log_put", err, error_policy());
  70. return (err);
  71. }
  72. return (0);
  73. }
  74. int DbEnv::log_register(Db *dbp, const char *name)
  75. {
  76. int err = 0;
  77. DB_ENV *env = unwrap(this);
  78. if ((err = ::log_register(env, unwrap(dbp), name)) != 0) {
  79. DB_ERROR("DbEnv::log_register", err, error_policy());
  80. return (err);
  81. }
  82. return (0);
  83. }
  84. int DbEnv::log_stat(DB_LOG_STAT **spp, db_malloc_fcn_type db_malloc_fcn)
  85. {
  86. int err = 0;
  87. DB_ENV *env = unwrap(this);
  88. if ((err = ::log_stat(env, spp, db_malloc_fcn)) != 0) {
  89. DB_ERROR("DbEnv::log_stat", err, error_policy());
  90. return (err);
  91. }
  92. return (0);
  93. }
  94. int DbEnv::log_unregister(Db *dbp)
  95. {
  96. int err;
  97. DB_ENV *env = unwrap(this);
  98. if ((err = ::log_unregister(env, unwrap(dbp))) != 0) {
  99. DB_ERROR("DbEnv::log_unregister", err, error_policy());
  100. return (err);
  101. }
  102. return (0);
  103. }