mirror of
https://github.com/owncast/owncast.git
synced 2024-10-10 19:16:02 +00:00
Small openapi router generation experiment
This commit is contained in:
parent
14277c15dd
commit
0d24f8522f
5
experiment/generate-apis.sh
Executable file
5
experiment/generate-apis.sh
Executable file
@ -0,0 +1,5 @@
|
||||
#!/bin/sh
|
||||
|
||||
mkdir -p webserver/handlers
|
||||
oapi-codegen -generate "types" -o webserver/handlers/openapi_server-types.gen.go -package handlers -response-type-suffix responses openapi.yaml
|
||||
oapi-codegen -generate "chi-server" -o webserver/handlers/openapi_server.gen.go -package handlers -response-type-suffix responses openapi.yaml
|
||||
21
experiment/go.mod
Normal file
21
experiment/go.mod
Normal file
@ -0,0 +1,21 @@
|
||||
module oapi-test
|
||||
|
||||
go 1.20
|
||||
|
||||
require github.com/go-chi/chi v1.5.5
|
||||
|
||||
require (
|
||||
github.com/getkin/kin-openapi v0.120.0
|
||||
github.com/go-chi/chi/v5 v5.0.10
|
||||
)
|
||||
|
||||
require (
|
||||
github.com/go-openapi/jsonpointer v0.19.6 // indirect
|
||||
github.com/go-openapi/swag v0.22.4 // indirect
|
||||
github.com/invopop/yaml v0.2.0 // indirect
|
||||
github.com/josharian/intern v1.0.0 // indirect
|
||||
github.com/mailru/easyjson v0.7.7 // indirect
|
||||
github.com/mohae/deepcopy v0.0.0-20170929034955-c48cc78d4826 // indirect
|
||||
github.com/perimeterx/marshmallow v1.1.5 // indirect
|
||||
gopkg.in/yaml.v3 v3.0.1 // indirect
|
||||
)
|
||||
41
experiment/go.sum
Normal file
41
experiment/go.sum
Normal file
@ -0,0 +1,41 @@
|
||||
github.com/creack/pty v1.1.9/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E=
|
||||
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
|
||||
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
|
||||
github.com/getkin/kin-openapi v0.120.0 h1:MqJcNJFrMDFNc07iwE8iFC5eT2k/NPUFDIpNeiZv8Jg=
|
||||
github.com/getkin/kin-openapi v0.120.0/go.mod h1:PCWw/lfBrJY4HcdqE3jj+QFkaFK8ABoqo7PvqVhXXqw=
|
||||
github.com/go-chi/chi v1.5.5 h1:vOB/HbEMt9QqBqErz07QehcOKHaWFtuj87tTDVz2qXE=
|
||||
github.com/go-chi/chi v1.5.5/go.mod h1:C9JqLr3tIYjDOZpzn+BCuxY8z8vmca43EeMgyZt7irw=
|
||||
github.com/go-chi/chi/v5 v5.0.10 h1:rLz5avzKpjqxrYwXNfmjkrYYXOyLJd37pz53UFHC6vk=
|
||||
github.com/go-chi/chi/v5 v5.0.10/go.mod h1:DslCQbL2OYiznFReuXYUmQ2hGd1aDpCnlMNITLSKoi8=
|
||||
github.com/go-openapi/jsonpointer v0.19.6 h1:eCs3fxoIi3Wh6vtgmLTOjdhSpiqphQ+DaPn38N2ZdrE=
|
||||
github.com/go-openapi/jsonpointer v0.19.6/go.mod h1:osyAmYz/mB/C3I+WsTTSgw1ONzaLJoLCyoi6/zppojs=
|
||||
github.com/go-openapi/swag v0.22.3/go.mod h1:UzaqsxGiab7freDnrUUra0MwWfN/q7tE4j+VcZ0yl14=
|
||||
github.com/go-openapi/swag v0.22.4 h1:QLMzNJnMGPRNDCbySlcj1x01tzU8/9LTTL9hZZZogBU=
|
||||
github.com/go-openapi/swag v0.22.4/go.mod h1:UzaqsxGiab7freDnrUUra0MwWfN/q7tE4j+VcZ0yl14=
|
||||
github.com/invopop/yaml v0.2.0 h1:7zky/qH+O0DwAyoobXUqvVBwgBFRxKoQ/3FjcVpjTMY=
|
||||
github.com/invopop/yaml v0.2.0/go.mod h1:2XuRLgs/ouIrW3XNzuNj7J3Nvu/Dig5MXvbCEdiBN3Q=
|
||||
github.com/josharian/intern v1.0.0 h1:vlS4z54oSdjm0bgjRigI+G1HpF+tI+9rE5LLzOg8HmY=
|
||||
github.com/josharian/intern v1.0.0/go.mod h1:5DoeVV0s6jJacbCEi61lwdGj/aVlrQvzHFFd8Hwg//Y=
|
||||
github.com/kr/pretty v0.2.1/go.mod h1:ipq/a2n7PKx3OHsz4KJII5eveXtPO4qwEXGdVfWzfnI=
|
||||
github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ=
|
||||
github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI=
|
||||
github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE=
|
||||
github.com/mailru/easyjson v0.7.7 h1:UGYAvKxe3sBsEDzO8ZeWOSlIQfWFlxbzLZe7hwFURr0=
|
||||
github.com/mailru/easyjson v0.7.7/go.mod h1:xzfreul335JAWq5oZzymOObrkdz5UnU4kGfJJLY9Nlc=
|
||||
github.com/mohae/deepcopy v0.0.0-20170929034955-c48cc78d4826 h1:RWengNIwukTxcDr9M+97sNutRR1RKhG96O6jWumTTnw=
|
||||
github.com/mohae/deepcopy v0.0.0-20170929034955-c48cc78d4826/go.mod h1:TaXosZuwdSHYgviHp1DAtfrULt5eUgsSMsZf+YrPgl8=
|
||||
github.com/perimeterx/marshmallow v1.1.5 h1:a2LALqQ1BlHM8PZblsDdidgv1mWi1DgC2UmX50IvK2s=
|
||||
github.com/perimeterx/marshmallow v1.1.5/go.mod h1:dsXbUu8CRzfYP5a87xpp0xq9S3u0Vchtcl8we9tYaXw=
|
||||
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
|
||||
github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
|
||||
github.com/stretchr/objx v0.4.0/go.mod h1:YvHI0jy2hoMjB+UWwv71VJQ9isScKT/TqJzVSSt89Yw=
|
||||
github.com/stretchr/objx v0.5.0/go.mod h1:Yh+to48EsGEfYuaHDzXPcE3xhTkx73EhmCGUpEOglKo=
|
||||
github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg=
|
||||
github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU=
|
||||
github.com/stretchr/testify v1.8.1/go.mod h1:w2LPCIKwWwSfY2zedu0+kehJoqGctiVI29o6fzry7u4=
|
||||
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
|
||||
gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c/go.mod h1:JHkPIbrfpd72SG/EVd6muEfDQjcINNoR0C8j2r3qZ4Q=
|
||||
gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
|
||||
gopkg.in/yaml.v3 v3.0.0/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
|
||||
gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA=
|
||||
gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
|
||||
18
experiment/main.go
Normal file
18
experiment/main.go
Normal file
@ -0,0 +1,18 @@
|
||||
package main
|
||||
|
||||
import (
|
||||
"net/http"
|
||||
)
|
||||
|
||||
func main() {
|
||||
s := Handlers{}
|
||||
h := Handler(s)
|
||||
|
||||
// r := chi.NewRouter()
|
||||
// r.Use(middleware.Logger)
|
||||
// r.Get("/welcome", func(w http.ResponseWriter, r *http.Request) {
|
||||
// w.Write([]byte("welcome"))
|
||||
// })
|
||||
// r.Mount("/", Handler(&handlers))
|
||||
http.ListenAndServe(":3000", h)
|
||||
}
|
||||
12484
experiment/openapi.yaml
Normal file
12484
experiment/openapi.yaml
Normal file
File diff suppressed because one or more lines are too long
541
experiment/webserver/handlers/openapi_server-types.gen.go
Normal file
541
experiment/webserver/handlers/openapi_server-types.gen.go
Normal file
@ -0,0 +1,541 @@
|
||||
// Package handlers provides primitives to interact with the openapi HTTP API.
|
||||
//
|
||||
// Code generated by github.com/deepmap/oapi-codegen version v1.15.0 DO NOT EDIT.
|
||||
package handlers
|
||||
|
||||
import (
|
||||
"encoding/json"
|
||||
"time"
|
||||
|
||||
"github.com/oapi-codegen/runtime"
|
||||
)
|
||||
|
||||
const (
|
||||
AdminScopes = "Admin.Scopes"
|
||||
)
|
||||
|
||||
// ChatMessage A single chat message.
|
||||
type ChatMessage struct {
|
||||
// Body The text content of the chat message.
|
||||
Body *string `json:"body,omitempty"`
|
||||
Id *string `json:"id,omitempty"`
|
||||
Timestamp *time.Time `json:"timestamp,omitempty"`
|
||||
Type *string `json:"type,omitempty"`
|
||||
User *User `json:"user,omitempty"`
|
||||
}
|
||||
|
||||
// ConfigResponse A response returned for many admin-based configuration changes
|
||||
type ConfigResponse struct {
|
||||
Message *string `json:"message,omitempty"`
|
||||
Success *bool `json:"success,omitempty"`
|
||||
}
|
||||
|
||||
// ConfigValue This request is used for many of the admin APIs for setting a new value.
|
||||
type ConfigValue struct {
|
||||
Value ConfigValue_Value `json:"value"`
|
||||
}
|
||||
|
||||
// ConfigValueValue0 defines model for .
|
||||
type ConfigValueValue0 = map[string]interface{}
|
||||
|
||||
// ConfigValueValue1 defines model for .
|
||||
type ConfigValueValue1 = []interface{}
|
||||
|
||||
// ConfigValueValue2 defines model for .
|
||||
type ConfigValueValue2 = int
|
||||
|
||||
// ConfigValueValue3 defines model for .
|
||||
type ConfigValueValue3 = string
|
||||
|
||||
// ConfigValueValue4 defines model for .
|
||||
type ConfigValueValue4 = bool
|
||||
|
||||
// ConfigValue_Value defines model for ConfigValue.Value.
|
||||
type ConfigValue_Value struct {
|
||||
union json.RawMessage
|
||||
}
|
||||
|
||||
// FediverseFollower Single follower of this server on the Fediverse.
|
||||
type FediverseFollower struct {
|
||||
// Image Profile image for this follower
|
||||
Image *string `json:"image,omitempty"`
|
||||
|
||||
// Link URL for this follower on the Fediverse
|
||||
Link *string `json:"link,omitempty"`
|
||||
|
||||
// Name The follower's display name
|
||||
Name *string `json:"name,omitempty"`
|
||||
|
||||
// Timestamp The time this user followed this Owncast server
|
||||
Timestamp *time.Time `json:"timestamp,omitempty"`
|
||||
|
||||
// Username The Fediverse account name (user@server)
|
||||
Username *string `json:"username,omitempty"`
|
||||
}
|
||||
|
||||
// SocialHandleLink defines model for SocialHandleLink.
|
||||
type SocialHandleLink struct {
|
||||
// Icon Location of an icon image for this social platform.
|
||||
Icon *string `json:"icon,omitempty"`
|
||||
|
||||
// Platform Name of the social platform
|
||||
Platform string `json:"platform"`
|
||||
|
||||
// Url The URL where this link should be pointed to.
|
||||
Url string `json:"url"`
|
||||
}
|
||||
|
||||
// User defines model for User.
|
||||
type User struct {
|
||||
Authenticated *bool `json:"authenticated,omitempty"`
|
||||
CreatedAt *time.Time `json:"createdAt,omitempty"`
|
||||
DisplayColor *int `json:"displayColor,omitempty"`
|
||||
DisplayName *string `json:"displayName,omitempty"`
|
||||
Id *string `json:"id,omitempty"`
|
||||
IsBot *bool `json:"isBot,omitempty"`
|
||||
NameChangedAt *time.Time `json:"nameChangedAt,omitempty"`
|
||||
PreviousNames *[]string `json:"previousNames,omitempty"`
|
||||
}
|
||||
|
||||
// UserGeoLocation defines model for User-Geo-Location.
|
||||
type UserGeoLocation struct {
|
||||
CountryCode *string `json:"countryCode,omitempty"`
|
||||
RegionName *string `json:"regionName,omitempty"`
|
||||
TimeZone *string `json:"timeZone,omitempty"`
|
||||
}
|
||||
|
||||
// UserScope defines model for UserScope.
|
||||
type UserScope = interface{}
|
||||
|
||||
// VideoVariant A single video output configuration that details the specifics of quality, performance, etc.
|
||||
type VideoVariant struct {
|
||||
CpuUsageLevel *int `json:"cpuUsageLevel,omitempty"`
|
||||
Framerate *int `json:"framerate,omitempty"`
|
||||
|
||||
// Name A user-displayed name to call this output quality.
|
||||
Name *string `json:"name,omitempty"`
|
||||
ScaledHeight *int `json:"scaledHeight,omitempty"`
|
||||
ScaledWidth *int `json:"scaledWidth,omitempty"`
|
||||
VideoBitrate *int `json:"videoBitrate,omitempty"`
|
||||
|
||||
// VideoPassthrough Should encoding be disabled and video be sent out the same as it was recieved?
|
||||
VideoPassthrough *bool `json:"videoPassthrough,omitempty"`
|
||||
}
|
||||
|
||||
// WebhookEventType The event types available to alert external services
|
||||
type WebhookEventType = interface{}
|
||||
|
||||
// GetApiAdminAccesstokensJSONBody defines parameters for GetApiAdminAccesstokens.
|
||||
type GetApiAdminAccesstokensJSONBody = []struct {
|
||||
Authenticated *bool `json:"authenticated,omitempty"`
|
||||
CreatedAt *time.Time `json:"createdAt,omitempty"`
|
||||
DisplayColor *int `json:"displayColor,omitempty"`
|
||||
DisplayName *string `json:"displayName,omitempty"`
|
||||
Id *string `json:"id,omitempty"`
|
||||
IsBot *bool `json:"isBot,omitempty"`
|
||||
NameChangedAt *time.Time `json:"nameChangedAt,omitempty"`
|
||||
PreviousNames *[]string `json:"previousNames,omitempty"`
|
||||
}
|
||||
|
||||
// PostApiAdminAccesstokensCreateJSONBody defines parameters for PostApiAdminAccesstokensCreate.
|
||||
type PostApiAdminAccesstokensCreateJSONBody struct {
|
||||
// Empty An array of user access scopes to specify what this access token is allowed to do.
|
||||
Empty *[]UserScope `json:",omitempty"`
|
||||
|
||||
// Name The access token name, used as the display name for this user in chat.
|
||||
Name string `json:"name"`
|
||||
}
|
||||
|
||||
// PostApiAdminAccesstokensDeleteJSONBody defines parameters for PostApiAdminAccesstokensDelete.
|
||||
type PostApiAdminAccesstokensDeleteJSONBody struct {
|
||||
// Token Single access token
|
||||
Token string `json:"token"`
|
||||
}
|
||||
|
||||
// GetApiAdminChatClientsJSONBody defines parameters for GetApiAdminChatClients.
|
||||
type GetApiAdminChatClientsJSONBody = []struct {
|
||||
ConnectedAt *time.Time `json:"connectedAt,omitempty"`
|
||||
Geo *UserGeoLocation `json:"geo,omitempty"`
|
||||
MessageCount *int `json:"messageCount,omitempty"`
|
||||
User *User `json:"user,omitempty"`
|
||||
UserAgent *string `json:"userAgent,omitempty"`
|
||||
}
|
||||
|
||||
// PostApiAdminChatMessagevisibilityJSONBody defines parameters for PostApiAdminChatMessagevisibility.
|
||||
type PostApiAdminChatMessagevisibilityJSONBody struct {
|
||||
Empty *struct {
|
||||
// IdArray Chat message IDs you want to show or hide.
|
||||
IdArray []string `json:"idArray"`
|
||||
|
||||
// Visible Set to true if you want these messages to be visible, false if not.
|
||||
Visible bool `json:"visible"`
|
||||
} `json:",omitempty"`
|
||||
}
|
||||
|
||||
// PostApiAdminChatUsersSetenabledJSONBody defines parameters for PostApiAdminChatUsersSetenabled.
|
||||
type PostApiAdminChatUsersSetenabledJSONBody struct {
|
||||
Enabled bool `json:"enabled"`
|
||||
UserId string `json:"userId"`
|
||||
}
|
||||
|
||||
// PostApiAdminChatUsersSetmoderatorJSONBody defines parameters for PostApiAdminChatUsersSetmoderator.
|
||||
type PostApiAdminChatUsersSetmoderatorJSONBody struct {
|
||||
IsModerator bool `json:"isModerator"`
|
||||
UserId string `json:"userId"`
|
||||
}
|
||||
|
||||
// PostApiAdminConfigSocialhandlesJSONBody defines parameters for PostApiAdminConfigSocialhandles.
|
||||
type PostApiAdminConfigSocialhandlesJSONBody = []SocialHandleLink
|
||||
|
||||
// PostApiAdminConfigStreamkeysJSONBody defines parameters for PostApiAdminConfigStreamkeys.
|
||||
type PostApiAdminConfigStreamkeysJSONBody struct {
|
||||
Value *[]struct {
|
||||
// Comment Optional comment to describe this key or who it's used by.
|
||||
Comment *string `json:"comment,omitempty"`
|
||||
|
||||
// Key Streaming key
|
||||
Key string `json:"key"`
|
||||
} `json:"value,omitempty"`
|
||||
}
|
||||
|
||||
// PostApiAdminConfigTagsJSONBody defines parameters for PostApiAdminConfigTags.
|
||||
type PostApiAdminConfigTagsJSONBody = []string
|
||||
|
||||
// PostApiAdminConfigVideoStreamoutputvariantsJSONBody defines parameters for PostApiAdminConfigVideoStreamoutputvariants.
|
||||
type PostApiAdminConfigVideoStreamoutputvariantsJSONBody struct {
|
||||
// Value Array of video configurations.
|
||||
Value []VideoVariant `json:"value"`
|
||||
}
|
||||
|
||||
// PostApiAdminEmojiDeleteJSONBody defines parameters for PostApiAdminEmojiDelete.
|
||||
type PostApiAdminEmojiDeleteJSONBody struct {
|
||||
// Name Name of the custom chat emoji you wish to remove.
|
||||
Name string `json:"name"`
|
||||
}
|
||||
|
||||
// PostApiAdminEmojiUploadJSONBody defines parameters for PostApiAdminEmojiUpload.
|
||||
type PostApiAdminEmojiUploadJSONBody struct {
|
||||
Data []byte `json:"data"`
|
||||
|
||||
// Name Name of emoji
|
||||
Name string `json:"name"`
|
||||
}
|
||||
|
||||
// PostApiAdminFollowersApproveJSONBody defines parameters for PostApiAdminFollowersApprove.
|
||||
type PostApiAdminFollowersApproveJSONBody struct {
|
||||
// ActorIRI The IRI of this follower on the Fediverse
|
||||
ActorIRI string `json:"actorIRI"`
|
||||
|
||||
// Approved Is this follow request approved? False to deny.
|
||||
Approved bool `json:"approved"`
|
||||
}
|
||||
|
||||
// GetApiAdminHardwarestatsJSONBody defines parameters for GetApiAdminHardwarestats.
|
||||
type GetApiAdminHardwarestatsJSONBody struct {
|
||||
Cpu *[]struct {
|
||||
Time *time.Time `json:"time,omitempty"`
|
||||
Value *float32 `json:"value,omitempty"`
|
||||
} `json:"cpu,omitempty"`
|
||||
Disk *[]struct {
|
||||
Time *time.Time `json:"time,omitempty"`
|
||||
Value *float32 `json:"value,omitempty"`
|
||||
} `json:"disk,omitempty"`
|
||||
Memory *[]struct {
|
||||
Time *time.Time `json:"time,omitempty"`
|
||||
Value *float32 `json:"value,omitempty"`
|
||||
} `json:"memory,omitempty"`
|
||||
}
|
||||
|
||||
// GetApiAdminLogsJSONBody defines parameters for GetApiAdminLogs.
|
||||
type GetApiAdminLogsJSONBody = []struct {
|
||||
// Level Error or warning
|
||||
Level *string `json:"level,omitempty"`
|
||||
Message *string `json:"message,omitempty"`
|
||||
Time *time.Time `json:"time,omitempty"`
|
||||
}
|
||||
|
||||
// PostApiAdminWebhooksCreateJSONBody defines parameters for PostApiAdminWebhooksCreate.
|
||||
type PostApiAdminWebhooksCreateJSONBody struct {
|
||||
// Events An array of events that should be sent to the external webhook.
|
||||
Events []WebhookEventType `json:"events"`
|
||||
|
||||
// Url The URL to inform when the events take place.
|
||||
Url string `json:"url"`
|
||||
}
|
||||
|
||||
// PostApiAdminWebhooksDeleteJSONBody defines parameters for PostApiAdminWebhooksDelete.
|
||||
type PostApiAdminWebhooksDeleteJSONBody struct {
|
||||
Id *string `json:"id,omitempty"`
|
||||
}
|
||||
|
||||
// GetApiAdminAccesstokensJSONRequestBody defines body for GetApiAdminAccesstokens for application/json ContentType.
|
||||
type GetApiAdminAccesstokensJSONRequestBody = GetApiAdminAccesstokensJSONBody
|
||||
|
||||
// PostApiAdminAccesstokensCreateJSONRequestBody defines body for PostApiAdminAccesstokensCreate for application/json ContentType.
|
||||
type PostApiAdminAccesstokensCreateJSONRequestBody PostApiAdminAccesstokensCreateJSONBody
|
||||
|
||||
// PostApiAdminAccesstokensDeleteJSONRequestBody defines body for PostApiAdminAccesstokensDelete for application/json ContentType.
|
||||
type PostApiAdminAccesstokensDeleteJSONRequestBody PostApiAdminAccesstokensDeleteJSONBody
|
||||
|
||||
// GetApiAdminChatClientsJSONRequestBody defines body for GetApiAdminChatClients for application/json ContentType.
|
||||
type GetApiAdminChatClientsJSONRequestBody = GetApiAdminChatClientsJSONBody
|
||||
|
||||
// PostApiAdminChatMessagevisibilityJSONRequestBody defines body for PostApiAdminChatMessagevisibility for application/json ContentType.
|
||||
type PostApiAdminChatMessagevisibilityJSONRequestBody PostApiAdminChatMessagevisibilityJSONBody
|
||||
|
||||
// PostApiAdminChatUsersIpbansCreateJSONRequestBody defines body for PostApiAdminChatUsersIpbansCreate for application/json ContentType.
|
||||
type PostApiAdminChatUsersIpbansCreateJSONRequestBody = ConfigValue
|
||||
|
||||
// PostApiAdminChatUsersIpbansRemoveJSONRequestBody defines body for PostApiAdminChatUsersIpbansRemove for application/json ContentType.
|
||||
type PostApiAdminChatUsersIpbansRemoveJSONRequestBody = ConfigValue
|
||||
|
||||
// PostApiAdminChatUsersSetenabledJSONRequestBody defines body for PostApiAdminChatUsersSetenabled for application/json ContentType.
|
||||
type PostApiAdminChatUsersSetenabledJSONRequestBody PostApiAdminChatUsersSetenabledJSONBody
|
||||
|
||||
// PostApiAdminChatUsersSetmoderatorJSONRequestBody defines body for PostApiAdminChatUsersSetmoderator for application/json ContentType.
|
||||
type PostApiAdminChatUsersSetmoderatorJSONRequestBody PostApiAdminChatUsersSetmoderatorJSONBody
|
||||
|
||||
// PostApiAdminConfigAdminpassJSONRequestBody defines body for PostApiAdminConfigAdminpass for application/json ContentType.
|
||||
type PostApiAdminConfigAdminpassJSONRequestBody = ConfigValue
|
||||
|
||||
// PostApiAdminConfigAppearanceJSONRequestBody defines body for PostApiAdminConfigAppearance for application/json ContentType.
|
||||
type PostApiAdminConfigAppearanceJSONRequestBody = ConfigValue
|
||||
|
||||
// PostApiAdminConfigChatDisableJSONRequestBody defines body for PostApiAdminConfigChatDisable for application/json ContentType.
|
||||
type PostApiAdminConfigChatDisableJSONRequestBody = ConfigValue
|
||||
|
||||
// PostApiAdminConfigChatEstablishedusermodeJSONRequestBody defines body for PostApiAdminConfigChatEstablishedusermode for application/json ContentType.
|
||||
type PostApiAdminConfigChatEstablishedusermodeJSONRequestBody = ConfigValue
|
||||
|
||||
// PostApiAdminConfigChatForbiddenusernamesJSONRequestBody defines body for PostApiAdminConfigChatForbiddenusernames for application/json ContentType.
|
||||
type PostApiAdminConfigChatForbiddenusernamesJSONRequestBody = ConfigValue
|
||||
|
||||
// PostApiAdminConfigChatJoinmessagesenabledJSONRequestBody defines body for PostApiAdminConfigChatJoinmessagesenabled for application/json ContentType.
|
||||
type PostApiAdminConfigChatJoinmessagesenabledJSONRequestBody = ConfigValue
|
||||
|
||||
// PostApiAdminConfigChatSuggestedusernamesJSONRequestBody defines body for PostApiAdminConfigChatSuggestedusernames for application/json ContentType.
|
||||
type PostApiAdminConfigChatSuggestedusernamesJSONRequestBody = ConfigValue
|
||||
|
||||
// PostApiAdminConfigDirectoryenabledJSONRequestBody defines body for PostApiAdminConfigDirectoryenabled for application/json ContentType.
|
||||
type PostApiAdminConfigDirectoryenabledJSONRequestBody = ConfigValue
|
||||
|
||||
// PostApiAdminConfigFfmpegpathJSONRequestBody defines body for PostApiAdminConfigFfmpegpath for application/json ContentType.
|
||||
type PostApiAdminConfigFfmpegpathJSONRequestBody = ConfigValue
|
||||
|
||||
// PostApiAdminConfigLogoJSONRequestBody defines body for PostApiAdminConfigLogo for application/json ContentType.
|
||||
type PostApiAdminConfigLogoJSONRequestBody = ConfigValue
|
||||
|
||||
// PostApiAdminConfigNameJSONRequestBody defines body for PostApiAdminConfigName for application/json ContentType.
|
||||
type PostApiAdminConfigNameJSONRequestBody = ConfigValue
|
||||
|
||||
// PostApiAdminConfigNsfwJSONRequestBody defines body for PostApiAdminConfigNsfw for application/json ContentType.
|
||||
type PostApiAdminConfigNsfwJSONRequestBody = ConfigValue
|
||||
|
||||
// PostApiAdminConfigOfflinemessageJSONRequestBody defines body for PostApiAdminConfigOfflinemessage for application/json ContentType.
|
||||
type PostApiAdminConfigOfflinemessageJSONRequestBody = ConfigValue
|
||||
|
||||
// PostApiAdminConfigPagecontentJSONRequestBody defines body for PostApiAdminConfigPagecontent for application/json ContentType.
|
||||
type PostApiAdminConfigPagecontentJSONRequestBody = ConfigValue
|
||||
|
||||
// PostApiAdminConfigRtmpserverportJSONRequestBody defines body for PostApiAdminConfigRtmpserverport for application/json ContentType.
|
||||
type PostApiAdminConfigRtmpserverportJSONRequestBody = ConfigValue
|
||||
|
||||
// PostApiAdminConfigServersummaryJSONRequestBody defines body for PostApiAdminConfigServersummary for application/json ContentType.
|
||||
type PostApiAdminConfigServersummaryJSONRequestBody = ConfigValue
|
||||
|
||||
// PostApiAdminConfigSocialhandlesJSONRequestBody defines body for PostApiAdminConfigSocialhandles for application/json ContentType.
|
||||
type PostApiAdminConfigSocialhandlesJSONRequestBody = PostApiAdminConfigSocialhandlesJSONBody
|
||||
|
||||
// PostApiAdminConfigSockethostoverrideJSONRequestBody defines body for PostApiAdminConfigSockethostoverride for application/json ContentType.
|
||||
type PostApiAdminConfigSockethostoverrideJSONRequestBody = ConfigValue
|
||||
|
||||
// PostApiAdminConfigStreamkeysJSONRequestBody defines body for PostApiAdminConfigStreamkeys for application/json ContentType.
|
||||
type PostApiAdminConfigStreamkeysJSONRequestBody PostApiAdminConfigStreamkeysJSONBody
|
||||
|
||||
// PostApiAdminConfigStreamtitleJSONRequestBody defines body for PostApiAdminConfigStreamtitle for application/json ContentType.
|
||||
type PostApiAdminConfigStreamtitleJSONRequestBody = ConfigValue
|
||||
|
||||
// PostApiAdminConfigTagsJSONRequestBody defines body for PostApiAdminConfigTags for application/json ContentType.
|
||||
type PostApiAdminConfigTagsJSONRequestBody = PostApiAdminConfigTagsJSONBody
|
||||
|
||||
// PostApiAdminConfigVideoCodecJSONRequestBody defines body for PostApiAdminConfigVideoCodec for application/json ContentType.
|
||||
type PostApiAdminConfigVideoCodecJSONRequestBody = ConfigValue
|
||||
|
||||
// PostApiAdminConfigVideoStreamlatencylevelJSONRequestBody defines body for PostApiAdminConfigVideoStreamlatencylevel for application/json ContentType.
|
||||
type PostApiAdminConfigVideoStreamlatencylevelJSONRequestBody = ConfigValue
|
||||
|
||||
// PostApiAdminConfigVideoStreamoutputvariantsJSONRequestBody defines body for PostApiAdminConfigVideoStreamoutputvariants for application/json ContentType.
|
||||
type PostApiAdminConfigVideoStreamoutputvariantsJSONRequestBody PostApiAdminConfigVideoStreamoutputvariantsJSONBody
|
||||
|
||||
// PostApiAdminConfigVideoservingendpointJSONRequestBody defines body for PostApiAdminConfigVideoservingendpoint for application/json ContentType.
|
||||
type PostApiAdminConfigVideoservingendpointJSONRequestBody = ConfigValue
|
||||
|
||||
// PostApiAdminConfigWebserveripJSONRequestBody defines body for PostApiAdminConfigWebserverip for application/json ContentType.
|
||||
type PostApiAdminConfigWebserveripJSONRequestBody = ConfigValue
|
||||
|
||||
// PostApiAdminConfigWebserverportJSONRequestBody defines body for PostApiAdminConfigWebserverport for application/json ContentType.
|
||||
type PostApiAdminConfigWebserverportJSONRequestBody = ConfigValue
|
||||
|
||||
// PostApiAdminConfigWelcomemessageJSONRequestBody defines body for PostApiAdminConfigWelcomemessage for application/json ContentType.
|
||||
type PostApiAdminConfigWelcomemessageJSONRequestBody = ConfigValue
|
||||
|
||||
// PostApiAdminEmojiDeleteJSONRequestBody defines body for PostApiAdminEmojiDelete for application/json ContentType.
|
||||
type PostApiAdminEmojiDeleteJSONRequestBody PostApiAdminEmojiDeleteJSONBody
|
||||
|
||||
// PostApiAdminEmojiUploadJSONRequestBody defines body for PostApiAdminEmojiUpload for application/json ContentType.
|
||||
type PostApiAdminEmojiUploadJSONRequestBody PostApiAdminEmojiUploadJSONBody
|
||||
|
||||
// PostApiAdminFollowersApproveJSONRequestBody defines body for PostApiAdminFollowersApprove for application/json ContentType.
|
||||
type PostApiAdminFollowersApproveJSONRequestBody PostApiAdminFollowersApproveJSONBody
|
||||
|
||||
// GetApiAdminHardwarestatsJSONRequestBody defines body for GetApiAdminHardwarestats for application/json ContentType.
|
||||
type GetApiAdminHardwarestatsJSONRequestBody GetApiAdminHardwarestatsJSONBody
|
||||
|
||||
// GetApiAdminLogsJSONRequestBody defines body for GetApiAdminLogs for application/json ContentType.
|
||||
type GetApiAdminLogsJSONRequestBody = GetApiAdminLogsJSONBody
|
||||
|
||||
// PostApiAdminWebhooksCreateJSONRequestBody defines body for PostApiAdminWebhooksCreate for application/json ContentType.
|
||||
type PostApiAdminWebhooksCreateJSONRequestBody PostApiAdminWebhooksCreateJSONBody
|
||||
|
||||
// PostApiAdminWebhooksDeleteJSONRequestBody defines body for PostApiAdminWebhooksDelete for application/json ContentType.
|
||||
type PostApiAdminWebhooksDeleteJSONRequestBody PostApiAdminWebhooksDeleteJSONBody
|
||||
|
||||
// AsConfigValueValue0 returns the union data inside the ConfigValue_Value as a ConfigValueValue0
|
||||
func (t ConfigValue_Value) AsConfigValueValue0() (ConfigValueValue0, error) {
|
||||
var body ConfigValueValue0
|
||||
err := json.Unmarshal(t.union, &body)
|
||||
return body, err
|
||||
}
|
||||
|
||||
// FromConfigValueValue0 overwrites any union data inside the ConfigValue_Value as the provided ConfigValueValue0
|
||||
func (t *ConfigValue_Value) FromConfigValueValue0(v ConfigValueValue0) error {
|
||||
b, err := json.Marshal(v)
|
||||
t.union = b
|
||||
return err
|
||||
}
|
||||
|
||||
// MergeConfigValueValue0 performs a merge with any union data inside the ConfigValue_Value, using the provided ConfigValueValue0
|
||||
func (t *ConfigValue_Value) MergeConfigValueValue0(v ConfigValueValue0) error {
|
||||
b, err := json.Marshal(v)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
merged, err := runtime.JsonMerge(t.union, b)
|
||||
t.union = merged
|
||||
return err
|
||||
}
|
||||
|
||||
// AsConfigValueValue1 returns the union data inside the ConfigValue_Value as a ConfigValueValue1
|
||||
func (t ConfigValue_Value) AsConfigValueValue1() (ConfigValueValue1, error) {
|
||||
var body ConfigValueValue1
|
||||
err := json.Unmarshal(t.union, &body)
|
||||
return body, err
|
||||
}
|
||||
|
||||
// FromConfigValueValue1 overwrites any union data inside the ConfigValue_Value as the provided ConfigValueValue1
|
||||
func (t *ConfigValue_Value) FromConfigValueValue1(v ConfigValueValue1) error {
|
||||
b, err := json.Marshal(v)
|
||||
t.union = b
|
||||
return err
|
||||
}
|
||||
|
||||
// MergeConfigValueValue1 performs a merge with any union data inside the ConfigValue_Value, using the provided ConfigValueValue1
|
||||
func (t *ConfigValue_Value) MergeConfigValueValue1(v ConfigValueValue1) error {
|
||||
b, err := json.Marshal(v)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
merged, err := runtime.JsonMerge(t.union, b)
|
||||
t.union = merged
|
||||
return err
|
||||
}
|
||||
|
||||
// AsConfigValueValue2 returns the union data inside the ConfigValue_Value as a ConfigValueValue2
|
||||
func (t ConfigValue_Value) AsConfigValueValue2() (ConfigValueValue2, error) {
|
||||
var body ConfigValueValue2
|
||||
err := json.Unmarshal(t.union, &body)
|
||||
return body, err
|
||||
}
|
||||
|
||||
// FromConfigValueValue2 overwrites any union data inside the ConfigValue_Value as the provided ConfigValueValue2
|
||||
func (t *ConfigValue_Value) FromConfigValueValue2(v ConfigValueValue2) error {
|
||||
b, err := json.Marshal(v)
|
||||
t.union = b
|
||||
return err
|
||||
}
|
||||
|
||||
// MergeConfigValueValue2 performs a merge with any union data inside the ConfigValue_Value, using the provided ConfigValueValue2
|
||||
func (t *ConfigValue_Value) MergeConfigValueValue2(v ConfigValueValue2) error {
|
||||
b, err := json.Marshal(v)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
merged, err := runtime.JsonMerge(t.union, b)
|
||||
t.union = merged
|
||||
return err
|
||||
}
|
||||
|
||||
// AsConfigValueValue3 returns the union data inside the ConfigValue_Value as a ConfigValueValue3
|
||||
func (t ConfigValue_Value) AsConfigValueValue3() (ConfigValueValue3, error) {
|
||||
var body ConfigValueValue3
|
||||
err := json.Unmarshal(t.union, &body)
|
||||
return body, err
|
||||
}
|
||||
|
||||
// FromConfigValueValue3 overwrites any union data inside the ConfigValue_Value as the provided ConfigValueValue3
|
||||
func (t *ConfigValue_Value) FromConfigValueValue3(v ConfigValueValue3) error {
|
||||
b, err := json.Marshal(v)
|
||||
t.union = b
|
||||
return err
|
||||
}
|
||||
|
||||
// MergeConfigValueValue3 performs a merge with any union data inside the ConfigValue_Value, using the provided ConfigValueValue3
|
||||
func (t *ConfigValue_Value) MergeConfigValueValue3(v ConfigValueValue3) error {
|
||||
b, err := json.Marshal(v)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
merged, err := runtime.JsonMerge(t.union, b)
|
||||
t.union = merged
|
||||
return err
|
||||
}
|
||||
|
||||
// AsConfigValueValue4 returns the union data inside the ConfigValue_Value as a ConfigValueValue4
|
||||
func (t ConfigValue_Value) AsConfigValueValue4() (ConfigValueValue4, error) {
|
||||
var body ConfigValueValue4
|
||||
err := json.Unmarshal(t.union, &body)
|
||||
return body, err
|
||||
}
|
||||
|
||||
// FromConfigValueValue4 overwrites any union data inside the ConfigValue_Value as the provided ConfigValueValue4
|
||||
func (t *ConfigValue_Value) FromConfigValueValue4(v ConfigValueValue4) error {
|
||||
b, err := json.Marshal(v)
|
||||
t.union = b
|
||||
return err
|
||||
}
|
||||
|
||||
// MergeConfigValueValue4 performs a merge with any union data inside the ConfigValue_Value, using the provided ConfigValueValue4
|
||||
func (t *ConfigValue_Value) MergeConfigValueValue4(v ConfigValueValue4) error {
|
||||
b, err := json.Marshal(v)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
merged, err := runtime.JsonMerge(t.union, b)
|
||||
t.union = merged
|
||||
return err
|
||||
}
|
||||
|
||||
func (t ConfigValue_Value) MarshalJSON() ([]byte, error) {
|
||||
b, err := t.union.MarshalJSON()
|
||||
return b, err
|
||||
}
|
||||
|
||||
func (t *ConfigValue_Value) UnmarshalJSON(b []byte) error {
|
||||
err := t.union.UnmarshalJSON(b)
|
||||
return err
|
||||
}
|
||||
1798
experiment/webserver/handlers/openapi_server.gen.go
Normal file
1798
experiment/webserver/handlers/openapi_server.gen.go
Normal file
File diff suppressed because it is too large
Load Diff
Loading…
x
Reference in New Issue
Block a user