// Copyright 2020 The Gitea Authors. All rights reserved. // Use of this source code is governed by a MIT-style // license that can be found in the LICENSE file. package convert import ( "code.gitea.io/gitea/models" api "code.gitea.io/gitea/modules/structs" ) // ToRelease convert a models.Release to api.Release func ToRelease(r *models.Release) *api.Release { assets := make([]*api.Attachment, 0) for _, att := range r.Attachments { assets = append(assets, ToReleaseAttachment(att)) } return &api.Release{ ID: r.ID, TagName: r.TagName, Target: r.Target, Title: r.Title, Note: r.Note, URL: r.APIURL(), HTMLURL: r.HTMLURL(), TarURL: r.TarURL(), ZipURL: r.ZipURL(), IsDraft: r.IsDraft, IsPrerelease: r.IsPrerelease, CreatedAt: r.CreatedUnix.AsTime(), PublishedAt: r.CreatedUnix.AsTime(), Publisher: ToUser(r.Publisher, false, false), Attachments: assets, } } // ToReleaseAttachment converts models.Attachment to api.Attachment func ToReleaseAttachment(a *models.Attachment) *api.Attachment { return &api.Attachment{ ID: a.ID, Name: a.Name, Created: a.CreatedUnix.AsTime(), DownloadCount: a.DownloadCount, Size: a.Size, UUID: a.UUID, DownloadURL: a.DownloadURL(), } }