mirror of
https://codeberg.org/forgejo/forgejo.git
synced 2024-11-22 13:45:19 +00:00
add star activity & bind to swagger
This commit is contained in:
parent
ff5a4405fd
commit
46fb4fec8f
42
modules/forgefed/star.go
Normal file
42
modules/forgefed/star.go
Normal file
|
@ -0,0 +1,42 @@
|
||||||
|
// Copyright 2023 The Forgejo Authors. All rights reserved.
|
||||||
|
// SPDX-License-Identifier: MIT
|
||||||
|
|
||||||
|
package forgefed
|
||||||
|
|
||||||
|
import (
|
||||||
|
ap "github.com/go-ap/activitypub"
|
||||||
|
)
|
||||||
|
|
||||||
|
type (
|
||||||
|
SourceType string
|
||||||
|
)
|
||||||
|
|
||||||
|
type SourceTypes []SourceType
|
||||||
|
|
||||||
|
const (
|
||||||
|
StarType ap.ActivityVocabularyType = "Star"
|
||||||
|
)
|
||||||
|
|
||||||
|
const (
|
||||||
|
ForgejoSourceType SourceType = "frogejo"
|
||||||
|
)
|
||||||
|
|
||||||
|
var KnownSourceTypes = SourceTypes{
|
||||||
|
ForgejoSourceType,
|
||||||
|
}
|
||||||
|
|
||||||
|
type Star struct {
|
||||||
|
ap.Activity
|
||||||
|
// Source identifies the system generated this Activity. Exact one value has to be specified.
|
||||||
|
Source SourceType `jsonld:"source,omitempty"`
|
||||||
|
}
|
||||||
|
|
||||||
|
// RepositoryNew initializes a Repository type actor
|
||||||
|
func StarNew(id ap.ID, ob ap.ID) *Star {
|
||||||
|
a := ap.ActivityNew(id, StarType, ob)
|
||||||
|
// TODO: is this not handeld by ActivityNew??
|
||||||
|
a.Type = StarType
|
||||||
|
o := Star{Activity: *a}
|
||||||
|
o.Source = ForgejoSourceType
|
||||||
|
return &o
|
||||||
|
}
|
|
@ -81,6 +81,7 @@ import (
|
||||||
"code.gitea.io/gitea/models/unit"
|
"code.gitea.io/gitea/models/unit"
|
||||||
user_model "code.gitea.io/gitea/models/user"
|
user_model "code.gitea.io/gitea/models/user"
|
||||||
"code.gitea.io/gitea/modules/context"
|
"code.gitea.io/gitea/modules/context"
|
||||||
|
"code.gitea.io/gitea/modules/forgefed"
|
||||||
"code.gitea.io/gitea/modules/log"
|
"code.gitea.io/gitea/modules/log"
|
||||||
"code.gitea.io/gitea/modules/setting"
|
"code.gitea.io/gitea/modules/setting"
|
||||||
api "code.gitea.io/gitea/modules/structs"
|
api "code.gitea.io/gitea/modules/structs"
|
||||||
|
@ -897,7 +898,8 @@ func Routes() *web.Route {
|
||||||
m.Group("/repository-id/{repository-id}", func() {
|
m.Group("/repository-id/{repository-id}", func() {
|
||||||
m.Get("", activitypub.Repository)
|
m.Get("", activitypub.Repository)
|
||||||
m.Post("/inbox",
|
m.Post("/inbox",
|
||||||
bind(api.CreateRepoOption{}),
|
// TODO: bind ativities here
|
||||||
|
bind(forgefed.Star{}),
|
||||||
//activitypub.ReqHTTPSignature(),
|
//activitypub.ReqHTTPSignature(),
|
||||||
activitypub.RepositoryInbox)
|
activitypub.RepositoryInbox)
|
||||||
}, context_service.RepositoryIDAssignmentAPI())
|
}, context_service.RepositoryIDAssignmentAPI())
|
||||||
|
|
Loading…
Reference in a new issue