gen.go 4.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183
  1. // Code generated by gorm.io/gen. DO NOT EDIT.
  2. // Code generated by gorm.io/gen. DO NOT EDIT.
  3. // Code generated by gorm.io/gen. DO NOT EDIT.
  4. package query
  5. import (
  6. "context"
  7. "database/sql"
  8. "gorm.io/gorm"
  9. "gorm.io/gen"
  10. "gorm.io/plugin/dbresolver"
  11. )
  12. var (
  13. Q = new(Query)
  14. AcmeUser *acmeUser
  15. Auth *auth
  16. AuthToken *authToken
  17. Cert *cert
  18. ChatGPTLog *chatGPTLog
  19. ConfigBackup *configBackup
  20. DnsCredential *dnsCredential
  21. Environment *environment
  22. Notification *notification
  23. Site *site
  24. Stream *stream
  25. )
  26. func SetDefault(db *gorm.DB, opts ...gen.DOOption) {
  27. *Q = *Use(db, opts...)
  28. AcmeUser = &Q.AcmeUser
  29. Auth = &Q.Auth
  30. AuthToken = &Q.AuthToken
  31. Cert = &Q.Cert
  32. ChatGPTLog = &Q.ChatGPTLog
  33. ConfigBackup = &Q.ConfigBackup
  34. DnsCredential = &Q.DnsCredential
  35. Environment = &Q.Environment
  36. Notification = &Q.Notification
  37. Site = &Q.Site
  38. Stream = &Q.Stream
  39. }
  40. func Use(db *gorm.DB, opts ...gen.DOOption) *Query {
  41. return &Query{
  42. db: db,
  43. AcmeUser: newAcmeUser(db, opts...),
  44. Auth: newAuth(db, opts...),
  45. AuthToken: newAuthToken(db, opts...),
  46. Cert: newCert(db, opts...),
  47. ChatGPTLog: newChatGPTLog(db, opts...),
  48. ConfigBackup: newConfigBackup(db, opts...),
  49. DnsCredential: newDnsCredential(db, opts...),
  50. Environment: newEnvironment(db, opts...),
  51. Notification: newNotification(db, opts...),
  52. Site: newSite(db, opts...),
  53. Stream: newStream(db, opts...),
  54. }
  55. }
  56. type Query struct {
  57. db *gorm.DB
  58. AcmeUser acmeUser
  59. Auth auth
  60. AuthToken authToken
  61. Cert cert
  62. ChatGPTLog chatGPTLog
  63. ConfigBackup configBackup
  64. DnsCredential dnsCredential
  65. Environment environment
  66. Notification notification
  67. Site site
  68. Stream stream
  69. }
  70. func (q *Query) Available() bool { return q.db != nil }
  71. func (q *Query) clone(db *gorm.DB) *Query {
  72. return &Query{
  73. db: db,
  74. AcmeUser: q.AcmeUser.clone(db),
  75. Auth: q.Auth.clone(db),
  76. AuthToken: q.AuthToken.clone(db),
  77. Cert: q.Cert.clone(db),
  78. ChatGPTLog: q.ChatGPTLog.clone(db),
  79. ConfigBackup: q.ConfigBackup.clone(db),
  80. DnsCredential: q.DnsCredential.clone(db),
  81. Environment: q.Environment.clone(db),
  82. Notification: q.Notification.clone(db),
  83. Site: q.Site.clone(db),
  84. Stream: q.Stream.clone(db),
  85. }
  86. }
  87. func (q *Query) ReadDB() *Query {
  88. return q.ReplaceDB(q.db.Clauses(dbresolver.Read))
  89. }
  90. func (q *Query) WriteDB() *Query {
  91. return q.ReplaceDB(q.db.Clauses(dbresolver.Write))
  92. }
  93. func (q *Query) ReplaceDB(db *gorm.DB) *Query {
  94. return &Query{
  95. db: db,
  96. AcmeUser: q.AcmeUser.replaceDB(db),
  97. Auth: q.Auth.replaceDB(db),
  98. AuthToken: q.AuthToken.replaceDB(db),
  99. Cert: q.Cert.replaceDB(db),
  100. ChatGPTLog: q.ChatGPTLog.replaceDB(db),
  101. ConfigBackup: q.ConfigBackup.replaceDB(db),
  102. DnsCredential: q.DnsCredential.replaceDB(db),
  103. Environment: q.Environment.replaceDB(db),
  104. Notification: q.Notification.replaceDB(db),
  105. Site: q.Site.replaceDB(db),
  106. Stream: q.Stream.replaceDB(db),
  107. }
  108. }
  109. type queryCtx struct {
  110. AcmeUser *acmeUserDo
  111. Auth *authDo
  112. AuthToken *authTokenDo
  113. Cert *certDo
  114. ChatGPTLog *chatGPTLogDo
  115. ConfigBackup *configBackupDo
  116. DnsCredential *dnsCredentialDo
  117. Environment *environmentDo
  118. Notification *notificationDo
  119. Site *siteDo
  120. Stream *streamDo
  121. }
  122. func (q *Query) WithContext(ctx context.Context) *queryCtx {
  123. return &queryCtx{
  124. AcmeUser: q.AcmeUser.WithContext(ctx),
  125. Auth: q.Auth.WithContext(ctx),
  126. AuthToken: q.AuthToken.WithContext(ctx),
  127. Cert: q.Cert.WithContext(ctx),
  128. ChatGPTLog: q.ChatGPTLog.WithContext(ctx),
  129. ConfigBackup: q.ConfigBackup.WithContext(ctx),
  130. DnsCredential: q.DnsCredential.WithContext(ctx),
  131. Environment: q.Environment.WithContext(ctx),
  132. Notification: q.Notification.WithContext(ctx),
  133. Site: q.Site.WithContext(ctx),
  134. Stream: q.Stream.WithContext(ctx),
  135. }
  136. }
  137. func (q *Query) Transaction(fc func(tx *Query) error, opts ...*sql.TxOptions) error {
  138. return q.db.Transaction(func(tx *gorm.DB) error { return fc(q.clone(tx)) }, opts...)
  139. }
  140. func (q *Query) Begin(opts ...*sql.TxOptions) *QueryTx {
  141. tx := q.db.Begin(opts...)
  142. return &QueryTx{Query: q.clone(tx), Error: tx.Error}
  143. }
  144. type QueryTx struct {
  145. *Query
  146. Error error
  147. }
  148. func (q *QueryTx) Commit() error {
  149. return q.db.Commit().Error
  150. }
  151. func (q *QueryTx) Rollback() error {
  152. return q.db.Rollback().Error
  153. }
  154. func (q *QueryTx) SavePoint(name string) error {
  155. return q.db.SavePoint(name).Error
  156. }
  157. func (q *QueryTx) RollbackTo(name string) error {
  158. return q.db.RollbackTo(name).Error
  159. }