bitbucket.org/Aishee/synsec@v0.0.0-20210414005726-236fc01a153d/pkg/database/ent/meta_update.go (about) 1 // Code generated by entc, DO NOT EDIT. 2 3 package ent 4 5 import ( 6 "context" 7 "fmt" 8 "time" 9 10 "entgo.io/ent/dialect/sql" 11 "entgo.io/ent/dialect/sql/sqlgraph" 12 "entgo.io/ent/schema/field" 13 "bitbucket.org/Aishee/synsec/pkg/database/ent/alert" 14 "bitbucket.org/Aishee/synsec/pkg/database/ent/meta" 15 "bitbucket.org/Aishee/synsec/pkg/database/ent/predicate" 16 ) 17 18 // MetaUpdate is the builder for updating Meta entities. 19 type MetaUpdate struct { 20 config 21 hooks []Hook 22 mutation *MetaMutation 23 } 24 25 // Where adds a new predicate for the MetaUpdate builder. 26 func (mu *MetaUpdate) Where(ps ...predicate.Meta) *MetaUpdate { 27 mu.mutation.predicates = append(mu.mutation.predicates, ps...) 28 return mu 29 } 30 31 // SetCreatedAt sets the "created_at" field. 32 func (mu *MetaUpdate) SetCreatedAt(t time.Time) *MetaUpdate { 33 mu.mutation.SetCreatedAt(t) 34 return mu 35 } 36 37 // SetNillableCreatedAt sets the "created_at" field if the given value is not nil. 38 func (mu *MetaUpdate) SetNillableCreatedAt(t *time.Time) *MetaUpdate { 39 if t != nil { 40 mu.SetCreatedAt(*t) 41 } 42 return mu 43 } 44 45 // SetUpdatedAt sets the "updated_at" field. 46 func (mu *MetaUpdate) SetUpdatedAt(t time.Time) *MetaUpdate { 47 mu.mutation.SetUpdatedAt(t) 48 return mu 49 } 50 51 // SetNillableUpdatedAt sets the "updated_at" field if the given value is not nil. 52 func (mu *MetaUpdate) SetNillableUpdatedAt(t *time.Time) *MetaUpdate { 53 if t != nil { 54 mu.SetUpdatedAt(*t) 55 } 56 return mu 57 } 58 59 // SetKey sets the "key" field. 60 func (mu *MetaUpdate) SetKey(s string) *MetaUpdate { 61 mu.mutation.SetKey(s) 62 return mu 63 } 64 65 // SetValue sets the "value" field. 66 func (mu *MetaUpdate) SetValue(s string) *MetaUpdate { 67 mu.mutation.SetValue(s) 68 return mu 69 } 70 71 // SetOwnerID sets the "owner" edge to the Alert entity by ID. 72 func (mu *MetaUpdate) SetOwnerID(id int) *MetaUpdate { 73 mu.mutation.SetOwnerID(id) 74 return mu 75 } 76 77 // SetNillableOwnerID sets the "owner" edge to the Alert entity by ID if the given value is not nil. 78 func (mu *MetaUpdate) SetNillableOwnerID(id *int) *MetaUpdate { 79 if id != nil { 80 mu = mu.SetOwnerID(*id) 81 } 82 return mu 83 } 84 85 // SetOwner sets the "owner" edge to the Alert entity. 86 func (mu *MetaUpdate) SetOwner(a *Alert) *MetaUpdate { 87 return mu.SetOwnerID(a.ID) 88 } 89 90 // Mutation returns the MetaMutation object of the builder. 91 func (mu *MetaUpdate) Mutation() *MetaMutation { 92 return mu.mutation 93 } 94 95 // ClearOwner clears the "owner" edge to the Alert entity. 96 func (mu *MetaUpdate) ClearOwner() *MetaUpdate { 97 mu.mutation.ClearOwner() 98 return mu 99 } 100 101 // Save executes the query and returns the number of nodes affected by the update operation. 102 func (mu *MetaUpdate) Save(ctx context.Context) (int, error) { 103 var ( 104 err error 105 affected int 106 ) 107 if len(mu.hooks) == 0 { 108 if err = mu.check(); err != nil { 109 return 0, err 110 } 111 affected, err = mu.sqlSave(ctx) 112 } else { 113 var mut Mutator = MutateFunc(func(ctx context.Context, m Mutation) (Value, error) { 114 mutation, ok := m.(*MetaMutation) 115 if !ok { 116 return nil, fmt.Errorf("unexpected mutation type %T", m) 117 } 118 if err = mu.check(); err != nil { 119 return 0, err 120 } 121 mu.mutation = mutation 122 affected, err = mu.sqlSave(ctx) 123 mutation.done = true 124 return affected, err 125 }) 126 for i := len(mu.hooks) - 1; i >= 0; i-- { 127 mut = mu.hooks[i](mut) 128 } 129 if _, err := mut.Mutate(ctx, mu.mutation); err != nil { 130 return 0, err 131 } 132 } 133 return affected, err 134 } 135 136 // SaveX is like Save, but panics if an error occurs. 137 func (mu *MetaUpdate) SaveX(ctx context.Context) int { 138 affected, err := mu.Save(ctx) 139 if err != nil { 140 panic(err) 141 } 142 return affected 143 } 144 145 // Exec executes the query. 146 func (mu *MetaUpdate) Exec(ctx context.Context) error { 147 _, err := mu.Save(ctx) 148 return err 149 } 150 151 // ExecX is like Exec, but panics if an error occurs. 152 func (mu *MetaUpdate) ExecX(ctx context.Context) { 153 if err := mu.Exec(ctx); err != nil { 154 panic(err) 155 } 156 } 157 158 // check runs all checks and user-defined validators on the builder. 159 func (mu *MetaUpdate) check() error { 160 if v, ok := mu.mutation.Value(); ok { 161 if err := meta.ValueValidator(v); err != nil { 162 return &ValidationError{Name: "value", err: fmt.Errorf("ent: validator failed for field \"value\": %w", err)} 163 } 164 } 165 return nil 166 } 167 168 func (mu *MetaUpdate) sqlSave(ctx context.Context) (n int, err error) { 169 _spec := &sqlgraph.UpdateSpec{ 170 Node: &sqlgraph.NodeSpec{ 171 Table: meta.Table, 172 Columns: meta.Columns, 173 ID: &sqlgraph.FieldSpec{ 174 Type: field.TypeInt, 175 Column: meta.FieldID, 176 }, 177 }, 178 } 179 if ps := mu.mutation.predicates; len(ps) > 0 { 180 _spec.Predicate = func(selector *sql.Selector) { 181 for i := range ps { 182 ps[i](selector) 183 } 184 } 185 } 186 if value, ok := mu.mutation.CreatedAt(); ok { 187 _spec.Fields.Set = append(_spec.Fields.Set, &sqlgraph.FieldSpec{ 188 Type: field.TypeTime, 189 Value: value, 190 Column: meta.FieldCreatedAt, 191 }) 192 } 193 if value, ok := mu.mutation.UpdatedAt(); ok { 194 _spec.Fields.Set = append(_spec.Fields.Set, &sqlgraph.FieldSpec{ 195 Type: field.TypeTime, 196 Value: value, 197 Column: meta.FieldUpdatedAt, 198 }) 199 } 200 if value, ok := mu.mutation.Key(); ok { 201 _spec.Fields.Set = append(_spec.Fields.Set, &sqlgraph.FieldSpec{ 202 Type: field.TypeString, 203 Value: value, 204 Column: meta.FieldKey, 205 }) 206 } 207 if value, ok := mu.mutation.Value(); ok { 208 _spec.Fields.Set = append(_spec.Fields.Set, &sqlgraph.FieldSpec{ 209 Type: field.TypeString, 210 Value: value, 211 Column: meta.FieldValue, 212 }) 213 } 214 if mu.mutation.OwnerCleared() { 215 edge := &sqlgraph.EdgeSpec{ 216 Rel: sqlgraph.M2O, 217 Inverse: true, 218 Table: meta.OwnerTable, 219 Columns: []string{meta.OwnerColumn}, 220 Bidi: false, 221 Target: &sqlgraph.EdgeTarget{ 222 IDSpec: &sqlgraph.FieldSpec{ 223 Type: field.TypeInt, 224 Column: alert.FieldID, 225 }, 226 }, 227 } 228 _spec.Edges.Clear = append(_spec.Edges.Clear, edge) 229 } 230 if nodes := mu.mutation.OwnerIDs(); len(nodes) > 0 { 231 edge := &sqlgraph.EdgeSpec{ 232 Rel: sqlgraph.M2O, 233 Inverse: true, 234 Table: meta.OwnerTable, 235 Columns: []string{meta.OwnerColumn}, 236 Bidi: false, 237 Target: &sqlgraph.EdgeTarget{ 238 IDSpec: &sqlgraph.FieldSpec{ 239 Type: field.TypeInt, 240 Column: alert.FieldID, 241 }, 242 }, 243 } 244 for _, k := range nodes { 245 edge.Target.Nodes = append(edge.Target.Nodes, k) 246 } 247 _spec.Edges.Add = append(_spec.Edges.Add, edge) 248 } 249 if n, err = sqlgraph.UpdateNodes(ctx, mu.driver, _spec); err != nil { 250 if _, ok := err.(*sqlgraph.NotFoundError); ok { 251 err = &NotFoundError{meta.Label} 252 } else if cerr, ok := isSQLConstraintError(err); ok { 253 err = cerr 254 } 255 return 0, err 256 } 257 return n, nil 258 } 259 260 // MetaUpdateOne is the builder for updating a single Meta entity. 261 type MetaUpdateOne struct { 262 config 263 hooks []Hook 264 mutation *MetaMutation 265 } 266 267 // SetCreatedAt sets the "created_at" field. 268 func (muo *MetaUpdateOne) SetCreatedAt(t time.Time) *MetaUpdateOne { 269 muo.mutation.SetCreatedAt(t) 270 return muo 271 } 272 273 // SetNillableCreatedAt sets the "created_at" field if the given value is not nil. 274 func (muo *MetaUpdateOne) SetNillableCreatedAt(t *time.Time) *MetaUpdateOne { 275 if t != nil { 276 muo.SetCreatedAt(*t) 277 } 278 return muo 279 } 280 281 // SetUpdatedAt sets the "updated_at" field. 282 func (muo *MetaUpdateOne) SetUpdatedAt(t time.Time) *MetaUpdateOne { 283 muo.mutation.SetUpdatedAt(t) 284 return muo 285 } 286 287 // SetNillableUpdatedAt sets the "updated_at" field if the given value is not nil. 288 func (muo *MetaUpdateOne) SetNillableUpdatedAt(t *time.Time) *MetaUpdateOne { 289 if t != nil { 290 muo.SetUpdatedAt(*t) 291 } 292 return muo 293 } 294 295 // SetKey sets the "key" field. 296 func (muo *MetaUpdateOne) SetKey(s string) *MetaUpdateOne { 297 muo.mutation.SetKey(s) 298 return muo 299 } 300 301 // SetValue sets the "value" field. 302 func (muo *MetaUpdateOne) SetValue(s string) *MetaUpdateOne { 303 muo.mutation.SetValue(s) 304 return muo 305 } 306 307 // SetOwnerID sets the "owner" edge to the Alert entity by ID. 308 func (muo *MetaUpdateOne) SetOwnerID(id int) *MetaUpdateOne { 309 muo.mutation.SetOwnerID(id) 310 return muo 311 } 312 313 // SetNillableOwnerID sets the "owner" edge to the Alert entity by ID if the given value is not nil. 314 func (muo *MetaUpdateOne) SetNillableOwnerID(id *int) *MetaUpdateOne { 315 if id != nil { 316 muo = muo.SetOwnerID(*id) 317 } 318 return muo 319 } 320 321 // SetOwner sets the "owner" edge to the Alert entity. 322 func (muo *MetaUpdateOne) SetOwner(a *Alert) *MetaUpdateOne { 323 return muo.SetOwnerID(a.ID) 324 } 325 326 // Mutation returns the MetaMutation object of the builder. 327 func (muo *MetaUpdateOne) Mutation() *MetaMutation { 328 return muo.mutation 329 } 330 331 // ClearOwner clears the "owner" edge to the Alert entity. 332 func (muo *MetaUpdateOne) ClearOwner() *MetaUpdateOne { 333 muo.mutation.ClearOwner() 334 return muo 335 } 336 337 // Save executes the query and returns the updated Meta entity. 338 func (muo *MetaUpdateOne) Save(ctx context.Context) (*Meta, error) { 339 var ( 340 err error 341 node *Meta 342 ) 343 if len(muo.hooks) == 0 { 344 if err = muo.check(); err != nil { 345 return nil, err 346 } 347 node, err = muo.sqlSave(ctx) 348 } else { 349 var mut Mutator = MutateFunc(func(ctx context.Context, m Mutation) (Value, error) { 350 mutation, ok := m.(*MetaMutation) 351 if !ok { 352 return nil, fmt.Errorf("unexpected mutation type %T", m) 353 } 354 if err = muo.check(); err != nil { 355 return nil, err 356 } 357 muo.mutation = mutation 358 node, err = muo.sqlSave(ctx) 359 mutation.done = true 360 return node, err 361 }) 362 for i := len(muo.hooks) - 1; i >= 0; i-- { 363 mut = muo.hooks[i](mut) 364 } 365 if _, err := mut.Mutate(ctx, muo.mutation); err != nil { 366 return nil, err 367 } 368 } 369 return node, err 370 } 371 372 // SaveX is like Save, but panics if an error occurs. 373 func (muo *MetaUpdateOne) SaveX(ctx context.Context) *Meta { 374 node, err := muo.Save(ctx) 375 if err != nil { 376 panic(err) 377 } 378 return node 379 } 380 381 // Exec executes the query on the entity. 382 func (muo *MetaUpdateOne) Exec(ctx context.Context) error { 383 _, err := muo.Save(ctx) 384 return err 385 } 386 387 // ExecX is like Exec, but panics if an error occurs. 388 func (muo *MetaUpdateOne) ExecX(ctx context.Context) { 389 if err := muo.Exec(ctx); err != nil { 390 panic(err) 391 } 392 } 393 394 // check runs all checks and user-defined validators on the builder. 395 func (muo *MetaUpdateOne) check() error { 396 if v, ok := muo.mutation.Value(); ok { 397 if err := meta.ValueValidator(v); err != nil { 398 return &ValidationError{Name: "value", err: fmt.Errorf("ent: validator failed for field \"value\": %w", err)} 399 } 400 } 401 return nil 402 } 403 404 func (muo *MetaUpdateOne) sqlSave(ctx context.Context) (_node *Meta, err error) { 405 _spec := &sqlgraph.UpdateSpec{ 406 Node: &sqlgraph.NodeSpec{ 407 Table: meta.Table, 408 Columns: meta.Columns, 409 ID: &sqlgraph.FieldSpec{ 410 Type: field.TypeInt, 411 Column: meta.FieldID, 412 }, 413 }, 414 } 415 id, ok := muo.mutation.ID() 416 if !ok { 417 return nil, &ValidationError{Name: "ID", err: fmt.Errorf("missing Meta.ID for update")} 418 } 419 _spec.Node.ID.Value = id 420 if ps := muo.mutation.predicates; len(ps) > 0 { 421 _spec.Predicate = func(selector *sql.Selector) { 422 for i := range ps { 423 ps[i](selector) 424 } 425 } 426 } 427 if value, ok := muo.mutation.CreatedAt(); ok { 428 _spec.Fields.Set = append(_spec.Fields.Set, &sqlgraph.FieldSpec{ 429 Type: field.TypeTime, 430 Value: value, 431 Column: meta.FieldCreatedAt, 432 }) 433 } 434 if value, ok := muo.mutation.UpdatedAt(); ok { 435 _spec.Fields.Set = append(_spec.Fields.Set, &sqlgraph.FieldSpec{ 436 Type: field.TypeTime, 437 Value: value, 438 Column: meta.FieldUpdatedAt, 439 }) 440 } 441 if value, ok := muo.mutation.Key(); ok { 442 _spec.Fields.Set = append(_spec.Fields.Set, &sqlgraph.FieldSpec{ 443 Type: field.TypeString, 444 Value: value, 445 Column: meta.FieldKey, 446 }) 447 } 448 if value, ok := muo.mutation.Value(); ok { 449 _spec.Fields.Set = append(_spec.Fields.Set, &sqlgraph.FieldSpec{ 450 Type: field.TypeString, 451 Value: value, 452 Column: meta.FieldValue, 453 }) 454 } 455 if muo.mutation.OwnerCleared() { 456 edge := &sqlgraph.EdgeSpec{ 457 Rel: sqlgraph.M2O, 458 Inverse: true, 459 Table: meta.OwnerTable, 460 Columns: []string{meta.OwnerColumn}, 461 Bidi: false, 462 Target: &sqlgraph.EdgeTarget{ 463 IDSpec: &sqlgraph.FieldSpec{ 464 Type: field.TypeInt, 465 Column: alert.FieldID, 466 }, 467 }, 468 } 469 _spec.Edges.Clear = append(_spec.Edges.Clear, edge) 470 } 471 if nodes := muo.mutation.OwnerIDs(); len(nodes) > 0 { 472 edge := &sqlgraph.EdgeSpec{ 473 Rel: sqlgraph.M2O, 474 Inverse: true, 475 Table: meta.OwnerTable, 476 Columns: []string{meta.OwnerColumn}, 477 Bidi: false, 478 Target: &sqlgraph.EdgeTarget{ 479 IDSpec: &sqlgraph.FieldSpec{ 480 Type: field.TypeInt, 481 Column: alert.FieldID, 482 }, 483 }, 484 } 485 for _, k := range nodes { 486 edge.Target.Nodes = append(edge.Target.Nodes, k) 487 } 488 _spec.Edges.Add = append(_spec.Edges.Add, edge) 489 } 490 _node = &Meta{config: muo.config} 491 _spec.Assign = _node.assignValues 492 _spec.ScanValues = _node.scanValues 493 if err = sqlgraph.UpdateNode(ctx, muo.driver, _spec); err != nil { 494 if _, ok := err.(*sqlgraph.NotFoundError); ok { 495 err = &NotFoundError{meta.Label} 496 } else if cerr, ok := isSQLConstraintError(err); ok { 497 err = cerr 498 } 499 return nil, err 500 } 501 return _node, nil 502 }