MCPcopy Index your code
hub / github.com/cloudreve/cloudreve / createSpec

Method createSpec

ent/metadata_create.go:207–262  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

205}
206
207func (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

Callers 2

sqlSaveMethod · 0.95
SaveMethod · 0.45

Calls 9

IsPublicMethod · 0.80
IDMethod · 0.65
CreatedAtMethod · 0.65
UpdatedAtMethod · 0.65
NameMethod · 0.65
SetFieldMethod · 0.45
DeletedAtMethod · 0.45
ValueMethod · 0.45
FileIDsMethod · 0.45

Tested by

no test coverage detected