192 lines
11 KiB
Go
192 lines
11 KiB
Go
// Package api provides primitives to interact with the openapi HTTP API.
|
|
//
|
|
// Code generated by github.com/deepmap/oapi-codegen version v1.9.0 DO NOT EDIT.
|
|
package api
|
|
|
|
import (
|
|
"bytes"
|
|
"compress/gzip"
|
|
"encoding/base64"
|
|
"fmt"
|
|
"net/url"
|
|
"path"
|
|
"strings"
|
|
|
|
"github.com/getkin/kin-openapi/openapi3"
|
|
)
|
|
|
|
// Base64 encoded, gzipped, json marshaled Swagger object
|
|
var swaggerSpec = []string{
|
|
|
|
"H4sIAAAAAAAC/+Q8224cOXa/QtQG8C7SN90sW0/R2uMdOTO2Ysk7AcaGxKo61U2piuwhWWr3GAL2I/In",
|
|
"yQJ5yD7lB7x/FPAc1q2LLbVsyevd+MFoVbHIw3O/kR+jRBVzJUFaEx18jEwyg4Ljz0NjxFRCesrNpfs7",
|
|
"BZNoMbdCyeig85YJwziz7hc3TFj3t4YExBWkLF4yOwP2k9KXoEfRIJprNQdtBeAqiSoKLlP8LSwU+OOf",
|
|
"NGTRQfSbcQPc2EM2fkYfRNeDyC7nEB1EXGu+dH9fqNh97R8bq4Wc+udncy2UFnbZGiCkhSnoagQ9DXwu",
|
|
"eRF+cfOcxnJb3rodh78TGul2xM3lekDKUqTuRaZ0wW10QA8GqwOvB5GGX0qhIY0Ofq4GOeT4vdSwtbaw",
|
|
"gqUWStpQDRp6va/XVfEFJNYBeHjFRc7jHF6q+ASsdeD0OOdEyGkOzNB7pjLG2UsVMzebCTDITImEfnbn",
|
|
"+WkGkk3FFcgBy0UhLPLZFc9F6v4vwTCr3DMDzE8yYq9lvmSlcTCyhbAzRkjDxd3aNQv2kL/KbClkvMxt",
|
|
"H67TGTD/kuBgZqYW0gPDSgOaLRzsKVjQhZC4/kyYCiUjmr41Z3iJ+snYKpVbMfcLCdks5PhRZzwBnBRS",
|
|
"Yd3WaUYPf8ZzA4M+cu0MtAOa57laMPfpKqCMZ9aNmQG7UDGbccNiAMlMGRfCWkhH7CdV5ikTxTxfshRy",
|
|
"oM/ynMEHYWhCbi4Ny5SmqS9UPGBcpk6BqGIucjdG2NE72TB6rFQOXOKOrnjex8/x0s6UZPBhrsEYoRD5",
|
|
"MTA3uuQWUocjpVPaYEUHwJ10SVfDVdNm0GeNS1j2YThKQVqRCdB+kprlB6wojXXwlFL8UhIjeqJdeEEI",
|
|
"ruMEg+tpQBYO5ZLBB6s543paFk7DVPwWz5cj96EZnagCjkm2lr/9HUscGUoDqRuZaOAWaKte/pYtGBoR",
|
|
"bzTLHVhIFAWkglvIl0yDm4px3GoKmZDCfTBwigCXd0sOECeqtB4irq1Iypzrmg5r+MGUcaU+b9K6AUV1",
|
|
"4r+sRf3OM5z6z6+EEatCZnV5E4Kc4HZFy/PD2yNSkA5ZlVhp9ttcXALj7Pc5SMfEPE2HSv5uxE7AuunO",
|
|
"kSDnpGbIHnNJukDyvF7Dzrh1S5d5Kh8hQ9aaCmSKCsSEEb1iYpwA+EEbmoWThk4r1qGMh+4NsQMJREVz",
|
|
"9qzUGqTNl0w5Pc6reVHCWprcjNj594cn33/3/OzF0Q/fnR0fnn5/Tl5KKjQkVuklm3M7Y//Mzt9F49/g",
|
|
"v3fROePzuUNpStsGWRZuf5nI4cyNjwZRKnT1Ex97izrjZgbpWTPyfUCA1zFNX8F7DLR239IaZL64YUfP",
|
|
"K3nGbTum8SwxYq8Uk2CcrjNWl4ktNRj2WzRfZsBSkbiluBZgfse4BmbK+Vxpu7p1D/zAeTY7227TueI2",
|
|
"GiAv3LrJ8O4qa9+sSV6iMOxHLvkUNJkAYVH0eeEUdMA1yHkM+d1cNo/Mzd3NkEvT8wZWxMGzBIHXWvM2",
|
|
"2XDYCij3H4SxFTMgd6/HWx9HlRv3eTs+7WjENdttlghtsPLXe9vyL5gGZ6XRZHFmyDn0XiZqog+QlBZu",
|
|
"iyPWO+k1A7VeV+CFCdf6JLSj77RWur+fP4AELRIG7jXTYOZKGghFPGlAJr4/PT1m5JYzN6I2h/VE7Mgw",
|
|
"IZO8TMl/cdiY82WueMqMImVeI5Cg7eDWOV0ImpAUQAglR+/kM7fY3mTHqUf0BtBooCfELY+5AfcmLs1y",
|
|
"xJzfiYBWQLGFyHOWKGm5kIyzR2/A6uXw0PmFj2joDDj6WQ48IVORcAvGe46LmUhmzIqCXC9HCjCWJVw6",
|
|
"PafBauGcyBfKuaBksaCaUBgmlWWOTbjT55XKeGRYOa+cnyQXINEkpooZVYBztKZMAzdKohZFSwofSAgE",
|
|
"z1nMk0uVZaQF60ir0n79MK8AY/g0xHsrzIV0b8aHOOtFzguQifojaOMd/w25/Kr54mYoqoFeR4ageElh",
|
|
"NM/z11l08PPN2uKk8vXdV9eDVYDJrwxJv3uBnrkowFhezNvoTrmFoXsTcoNFYLq3b4+eVy7DS4x0bwmS",
|
|
"N43Pndqvw/Nynt7zblaog5BWOGvWq4F9f/2eCPQjWO7kEwmVpuhC8/y4g/vejldiBh0Lq7lessJP5l0o",
|
|
"M2I/Ko1KeJ7Dh7b/4CWzUC6WQ+tTOoXDzvkoHiXnTiIJD1XIcwkYRsAH7ubyDI2MdhCdzLWwwF5oMZ05",
|
|
"j8L5myMouMgd1MtYg/yX2LszSk+rESQD0QkOYCf2f//nCvKWkeow8knL3ofxRJ558NuaQSpniCdWXGEW",
|
|
"hMvEYYASIvMcrP8tCVlCyWHGBY2of8y5U7DRIPqlhBJ/cJ3MxFXrJ/laNP3Q68N6ks4D/E2zlA5Fw/bi",
|
|
"0SBacAzYh5nSQ+eVmqCz9lLFb5HJ+rrmnsSsUlndiV7xou3ih6NduBKqNGefIaj3KdunlUg7eHNuLKOh",
|
|
"XyDhfbkOc6D5txI05hZaAoS5ruhgz5mSRgmsE6vrQYSJjrN4icnAwMr060zIDovX3OXZ9/11z/0mQD5G",
|
|
"hZCicBKyFTaQX6yqXojcuQtxo6oGleL54ehfv2v0TjBlobLMQBfQSQjQBk8f75AHNBtqmHU7aoV45i67",
|
|
"alFtlWPfgC21pBj5QsWGMp28ci/Rd3TBsNtCJ+m5sbD04oH13PsGjE+T9gKTzWMSci5uDUPCguRjo2dK",
|
|
"ZmJaam6DrpWZ8YLL79ArTIPZZkrWzICd4FDmtCqzmkuTgWaHx0eYYaiip1E4P2WV5lP4QSU8nNp9Xucn",
|
|
"0Bl3dtRxCK7lPx7dqmRWVxms7C6EpTcwFcaChpRCrD6GeJpqMGGpcHrxDHVHtx7SsgMiuVwfpOXcOmUa",
|
|
"jtlVZhdcrwnoN9L0tKWWfagC6LO6tmHuJvZfVIupcTGokdquyVTIGEQJJbwQymgVyy3MrNlRiM4nkJRa",
|
|
"2GUdxXaJvHE4c1McQwLybAbJpSoDJZITwIQGuiWknOwMhGYn3x9u7z1mifvQlMWAGfErZrXipQVDEV4K",
|
|
"xoHAcs/cVSic+NWaDN+K40lOkItnMD93EDXJ59FUkYxEB9HOXjzZfbqVbO/Hk52dnXQri3f3smSy/+Qp",
|
|
"39pO+ORxvJU+3p2k23uPn+4/mcRPJvsp7E120/3J9lOYuInErxAdbO1u72JARKvlajoVctpe6vFOvL+d",
|
|
"PN6Jn+5u72bp1k78dGd/ksWPJ5PHTydPJskO39rb39pPsh2e7u5uP97Zi7ee7CeP+ZOne5P9p81S2/vX",
|
|
"fftcYeQYAejVSLiduVhfU+ztlaRPB3fqAdU8I3bkS7s5d05CFWR7dVgTABOr3LDEK1xImZLtRUbsSDKV",
|
|
"uyjeh6Om8gX9XLjught2URqq672rt8OOnr+LBiwubW3J/CxM1LkDTlBgdH/ufaOhycvp2CQgYeikb0zl",
|
|
"l+HR8/NOlrsRes8yGxopgv2FyOFkDsmt9oomH3TJdLs0Nfa0XxPU+I4qBitUCRVWP4M9fGy6yhin+Ceh",
|
|
"PhVZBhrTLjMu2WLGLZKyDl4Gjjnak2ISCaQptSOcL4o1YoxpJyTnvTBfiNSrqZrNSFKTuq/g5pCITHgN",
|
|
"hfRAC+51lQe6Zc+7pJkHSVKZ80pW2jNWEAcTHTMegLCrattzBudAPfOx78VCV0cHUmSrvsmMV3prEM03",
|
|
"Q/BPws6aaHwjVA98cjFBdRavQf2AKe3c7AFLYQ4yxYYEiYUHMsf/4LTZ1H9qkcP7ULdS9cbYtjdfK8lS",
|
|
"ykupFhLD5FzxlFIijmAdz7XZP032hqDB2vcbUjWf7Xigo9HB3Vpf4oGchq/iIHwF87ae+F16UTkhbNWI",
|
|
"WplWBeNMtz6rTMqgTUof5KquuIO+cn7HC5yKSiUaGDKasyR+mHsGH3yJBRekskRTyvlaPNAIZi0PD8MW",
|
|
"7YVqcbtnXmmp7y/lGmoe6yqOFRH39L+rzb0vRXiD0muXSoJF8SYiaXqoHHtWdaEVDtwk//flaXX/YufT",
|
|
"f7C//unTnz/95dN/ffrzX//06b8//eXTf7ZbCA/2Jt10mF/lLCnS6CD66P+8Rp+3lJdnxIQ7bk9W88Se",
|
|
"8TIVqkqYOeL52Gms8cuxycYXKjbkw29t74xwynYi9vjVH9yfcxMdOCHKNC8ceaOt4ZYTMFHwKZgzpc+u",
|
|
"RArKmUJ8Eg0iVdp5aamBAz5YkFRPi0ZztD8EwZkf1YeLVqohG4fR5TtNevNppeyN87UExwhH/6HH5pA+",
|
|
"iXoC22aOW1JrdTFp02bXuq1pL5hIbfPAbSnFamir7epm39znTXw7ag1VSOBavbV3KOLU5Zo6A25UZpty",
|
|
"TqA44ws7IefEwdBUWFaMW/2OYeeXtCxeMu57HJzgU7qemgdJr70rJ5PtxyxXU6/jsO0ay97UKeGbFFdS",
|
|
"d63MXBeG1xKGuZC+T8/X5zFoe2RYUvdbzbAxyrnHlanFhUfs9RXohVM4hlUFm3xJe6kWrcuKIec1V9OQ",
|
|
"Nz1lDqhWX6hbbUCRogvvfZuWAxpRgQsC17mg5pB+/q7DC5t2ZIcy20QdSpeuSyZ/QbITEk3Fiv6rL0xa",
|
|
"rloqWqmTbwwu0cpXvl+LjxMxla/viokqf3m2vn3h3rfdyr2u2W0Pqht2bbmFZzMup4ECqq/QNIriTknq",
|
|
"oF/RmmwjoNJ1UN0DLLdA0FW6xnJtKZLjC36JmW+TA8ydR4OZaBcLlzalyM+C8aNVljlNENCtJCyYyz5x",
|
|
"UNP2FgjAGS9DUfpbA9rR3qlbp8JoMDt6PmBzbsxC6bR6RdJB5wsYt9VQ3RJ7p2cQX1jj4UYkjeKZWTuP",
|
|
"rh2MQmaK2r6k5Yltunjqbh92CtwJX6lz/6U5GI+zyucTatyviL6hxt8XXBes8Gm0w+OjaBDlIgEfSvl1",
|
|
"/nD8w9VOb/7FYjGaytK5gGP/jRlP5/lwZzQZgRzNbEFdFcLmHWj9clGr6SjaGk1GE6yhzkHyuXD+Ij6i",
|
|
"ZABSZsznYpysFuGmpOwch+KzoxRb6Wy3Wuf4j4IwnGp7MqlQChK/5/N57nNA4wtDUxMv38bpweogUq6L",
|
|
"celczLwOBon/yqLgekkQU66nPU3dw9fqzrTc+UU/o3uGNfVmju9kOldCWjR6U9+j3ZuwpkM96fWAcFtV",
|
|
"VOfKBHBK0Qc1bXgt8nuVLu8Nj91GsD7+sOlX+bgmaisU5+5fPyCFbwBowQ0zZZKAyco8XzI6coL9ld4d",
|
|
"uhJpyXM6pTJaOfdzL9BRHS4AH75gVZmty26EbMaZhAXVh5XucUare7bNeVQn70z3sjpdQIdlwDNil7XG",
|
|
"v1TNKGEGw2r/Szf5wzBY0w8TQFYvC0zZX+x+sMpJ0+hr81yn/SEA8itSKIjVWq0MqioKFHO7ZLkwlomM",
|
|
"SUWNqwW3yQzLL0Affjss+QJsMiOAqVfd3MJ0r2NsGm4aVDLsicEDYjJlRun6MFzDg7X3t85u1G30D0jc",
|
|
"fs9+AFf1oKZvP2Az8l5vP7a9Yyaze/ThBkw2S9Uq4KI5UNnB38cLFZ+J9HotCpGMZCXanfM/f4yE25VP",
|
|
"7XvPgibrCdaghcfb+iPe/20UP3plIQZ2LxiP6egZ0m4D3UkfydT7RoWDvEJ7K7RZx7N/rHuyHwwVq53l",
|
|
"n+3g1BxW1dxXfJybXZxn2I9PpeLS+P4Cq6jwQn8Jw3hiS+7MMW+W8xn8Gq3kj4+171oaLpqmpaB1qtqb",
|
|
"fHPTw5ioQGoggOgmvVNB/1VNU6/RaxNe+IpGppTwYQ6JhZTOq6wwYgW+d34WFT0rrvMP3gc+apzo5kuz",
|
|
"ylFGTOVQZdkNnrSYytdZ1hfX3X7E+e0h0ofMqNI7wfLP750ybnD2I9eX7SiZG1YF47dg+xnP/ekA4jAU",
|
|
"8dwrkMo5vZR45BWWjzSwqaKrAHD6UZgk8haKyAcVar/EenGu8+1fU5b7Wai/C2HemAcPSzsDaSkp7VPf",
|
|
"jhuqot6iPg14zwypgadLN8rNR42HnXS8aAjeZ1frs/1Be98iWfS35gyElCX4vunPcvtZo8zY+i++bZa6",
|
|
"O3uQS7Jo2r410Dn65RokhPlgmLQSsUHlFUjaPqgiay8UCktr00j73ECf/WPZPa/PPd0ICVWHY9VMxp2T",
|
|
"6hRGDin5+1SM87qkKQ52eAW7zYRsTs96/QJ6mKuE56jaeG7uW59dQWc3pemxqvV3PK0xr8kM0jKHU+pC",
|
|
"f7i4un3jVICweNdUO6m1TlG9Uv5ame4NERhfVAfIrwfR7mTn/tKfnbb6APDHoKv82nOQgpTm7uRp4KgJ",
|
|
"MaA/4OwtHVWtiZ0GzKjqNd7OA52T8rR1bP9gUi1oq9s7X9e0VFLEpYNSUa7Hud0IHbVv44UWU4WXDEmF",
|
|
"epak7Y4S6zNJvJ6/hY3bRAl5yngG14HUZ0tCxh+xTujTJ2FZadX7N8mg+Am/PIVy/+aitZN1suj9odaF",
|
|
"Ap9nLU5nUM21QNWawLyyqEEROfX9B2iRvdZosxERbUD3InTmRplpz//3YpbeNq0g1Athl3ORYJqk3bkx",
|
|
"12qqwZiBP77t71bSLOMiLzXcalsqi2JApp1smEN3NbvTYs4jIjGhw2Xjqs95TIcEbrAn3eNBD1SP6i4S",
|
|
"qhm0m4Frj8+flfh6MVzweEcA3GoEsnF1DqNVvGpLy8Nycg0JzylOwsvcjDc0uw8PwCl64wv3H1EPLauc",
|
|
"jthbA+zcrGC06Rg+d3SmcyEMUYlVIiXBjL6lHNczOn3Vuq2KQlCzLHIhL+vLUvAgHGGACpaWDst4pDjz",
|
|
"yvOczfgV0M181OJLutI3xMaQ4WUPPM/r+/0aK9goC0LqirI48QBxZtrChMB0DuVxDTysLNoN3ZuqjDZJ",
|
|
"H1R9hA4VbKpJ/gZKJNhTH4K3jD298BIhhZFKmxCDyqBUl+74JnTa4rclK3hmoznw1saBPwnkb5lS2hov",
|
|
"8UQpruuN3crph87Pdss0VwpVGYLuhE3I4Y8gUOWCoGj0Dd25ZkWeNyC0xAPnG3+sDqRcjz/iE/ErrC/d",
|
|
"tXvTlYZnnglXnNCNjxrhzQB9j7UaeqPL2mvV6l8C+yusnpWqD9oEVq12v8mqzcmz9w8ucb3zCOsL/c0x",
|
|
"km9Netr9xc25ieAJGjo82ReUm7R2zZH/v5lxEApivDZpLkaje9LoHHMKGWhWH8sh24zYQCv/LtqePHkX",
|
|
"rVzGhuG2zJf+BrVSy/adbrQ9U3tu1PZUn4PqEZwCdZ4bRXMYVYCSwCCne+GaDvEQmMgtiEC6tK1B4b8P",
|
|
"aZnhMy6Hz90+h29xgiiAw9a1oyEcKi2mQvIc13Tzj9hR5lvQc9VuWa/Piwlbt5KvXqlH+8au8voMKZeM",
|
|
"CxyRQlzSOf4N9vbaAzZ84QGLbmLLjcN4lViwQ2M18KKrIepMQSykk+9+rqDvy9MaZuWQ6WcG8chevRB+",
|
|
"e/LktuGeHTuM2Cr5727tB2fQ/nMXAGBvFIvBLsAze3WfYKN0qu4a32Lgr1VB8dc9vVM7yxUvY3izF7j9",
|
|
"jYTYX51wi9RWEthITnWXo1YJGCREDO7Dev142ZE7ciXO14rQAXM0O6fmRtIubXT4nXwrFggtg8/drbc7",
|
|
"7JXC5Ae3/Zcon5nSiYjzJUtyZShNgtdPJkpKwDvRSIFVGSKveDMhhZmB6dALGHzgiWWGF+BdSKvweIv7",
|
|
"JFWl8+7oAzN6JyuqPsJbB0iaPC/EEKIAi1W6XGtK2ykfvNyzDiv6aPE5JPebDCr1eI+jVs2rdzF5t8Op",
|
|
"1zUqrIE8GzX6DPt4+qr3pYqrkizmhn4pQQswg1Yn6WClKWrUaR0zgUkPj4+6vaztipwqilL6A0pOpfdb",
|
|
"oevpfWorYOsJf4fHRwNcCFmuIb7fEKZX3N8XKq6DWNOa39Pr+v31/wUAAP//xhb5REJjAAA=",
|
|
}
|
|
|
|
// GetSwagger returns the content of the embedded swagger specification file
|
|
// or error if failed to decode
|
|
func decodeSpec() ([]byte, error) {
|
|
zipped, err := base64.StdEncoding.DecodeString(strings.Join(swaggerSpec, ""))
|
|
if err != nil {
|
|
return nil, fmt.Errorf("error base64 decoding spec: %s", err)
|
|
}
|
|
zr, err := gzip.NewReader(bytes.NewReader(zipped))
|
|
if err != nil {
|
|
return nil, fmt.Errorf("error decompressing spec: %s", err)
|
|
}
|
|
var buf bytes.Buffer
|
|
_, err = buf.ReadFrom(zr)
|
|
if err != nil {
|
|
return nil, fmt.Errorf("error decompressing spec: %s", err)
|
|
}
|
|
|
|
return buf.Bytes(), nil
|
|
}
|
|
|
|
var rawSpec = decodeSpecCached()
|
|
|
|
// a naive cached of a decoded swagger spec
|
|
func decodeSpecCached() func() ([]byte, error) {
|
|
data, err := decodeSpec()
|
|
return func() ([]byte, error) {
|
|
return data, err
|
|
}
|
|
}
|
|
|
|
// Constructs a synthetic filesystem for resolving external references when loading openapi specifications.
|
|
func PathToRawSpec(pathToFile string) map[string]func() ([]byte, error) {
|
|
var res = make(map[string]func() ([]byte, error))
|
|
if len(pathToFile) > 0 {
|
|
res[pathToFile] = rawSpec
|
|
}
|
|
|
|
return res
|
|
}
|
|
|
|
// GetSwagger returns the Swagger specification corresponding to the generated code
|
|
// in this file. The external references of Swagger specification are resolved.
|
|
// The logic of resolving external references is tightly connected to "import-mapping" feature.
|
|
// Externally referenced files must be embedded in the corresponding golang packages.
|
|
// Urls can be supported but this task was out of the scope.
|
|
func GetSwagger() (swagger *openapi3.T, err error) {
|
|
var resolvePath = PathToRawSpec("")
|
|
|
|
loader := openapi3.NewLoader()
|
|
loader.IsExternalRefsAllowed = true
|
|
loader.ReadFromURIFunc = func(loader *openapi3.Loader, url *url.URL) ([]byte, error) {
|
|
var pathToFile = url.String()
|
|
pathToFile = path.Clean(pathToFile)
|
|
getSpec, ok := resolvePath[pathToFile]
|
|
if !ok {
|
|
err1 := fmt.Errorf("path not found: %s", pathToFile)
|
|
return nil, err1
|
|
}
|
|
return getSpec()
|
|
}
|
|
var specData []byte
|
|
specData, err = rawSpec()
|
|
if err != nil {
|
|
return
|
|
}
|
|
swagger, err = loader.LoadFromData(specData)
|
|
if err != nil {
|
|
return
|
|
}
|
|
return
|
|
}
|