| 205 | } |
| 206 | |
| 207 | func (mc *MetadataCreate) createSpec() (*Metadata, *sqlgraph.CreateSpec) { |
| 208 | var ( |
| 209 | _node = &Metadata{config: mc.config} |
| 210 | _spec = sqlgraph.NewCreateSpec(metadata.Table, sqlgraph.NewFieldSpec(metadata.FieldID, field.TypeInt)) |
| 211 | ) |
| 212 | |
| 213 | if id, ok := mc.mutation.ID(); ok { |
| 214 | _node.ID = id |
| 215 | id64 := int64(id) |
| 216 | _spec.ID.Value = id64 |
| 217 | } |
| 218 | |
| 219 | _spec.OnConflict = mc.conflict |
| 220 | if value, ok := mc.mutation.CreatedAt(); ok { |
| 221 | _spec.SetField(metadata.FieldCreatedAt, field.TypeTime, value) |
| 222 | _node.CreatedAt = value |
| 223 | } |
| 224 | if value, ok := mc.mutation.UpdatedAt(); ok { |
| 225 | _spec.SetField(metadata.FieldUpdatedAt, field.TypeTime, value) |
| 226 | _node.UpdatedAt = value |
| 227 | } |
| 228 | if value, ok := mc.mutation.DeletedAt(); ok { |
| 229 | _spec.SetField(metadata.FieldDeletedAt, field.TypeTime, value) |
| 230 | _node.DeletedAt = &value |
| 231 | } |
| 232 | if value, ok := mc.mutation.Name(); ok { |
| 233 | _spec.SetField(metadata.FieldName, field.TypeString, value) |
| 234 | _node.Name = value |
| 235 | } |
| 236 | if value, ok := mc.mutation.Value(); ok { |
| 237 | _spec.SetField(metadata.FieldValue, field.TypeString, value) |
| 238 | _node.Value = value |
| 239 | } |
| 240 | if value, ok := mc.mutation.IsPublic(); ok { |
| 241 | _spec.SetField(metadata.FieldIsPublic, field.TypeBool, value) |
| 242 | _node.IsPublic = value |
| 243 | } |
| 244 | if nodes := mc.mutation.FileIDs(); len(nodes) > 0 { |
| 245 | edge := &sqlgraph.EdgeSpec{ |
| 246 | Rel: sqlgraph.M2O, |
| 247 | Inverse: true, |
| 248 | Table: metadata.FileTable, |
| 249 | Columns: []string{metadata.FileColumn}, |
| 250 | Bidi: false, |
| 251 | Target: &sqlgraph.EdgeTarget{ |
| 252 | IDSpec: sqlgraph.NewFieldSpec(file.FieldID, field.TypeInt), |
| 253 | }, |
| 254 | } |
| 255 | for _, k := range nodes { |
| 256 | edge.Target.Nodes = append(edge.Target.Nodes, k) |
| 257 | } |
| 258 | _node.FileID = nodes[0] |
| 259 | _spec.Edges = append(_spec.Edges, edge) |
| 260 | } |
| 261 | return _node, _spec |
| 262 | } |
| 263 | |
| 264 | // OnConflict allows configuring the `ON CONFLICT` / `ON DUPLICATE KEY` clause |