mirror of
https://github.com/derfenix/webarchive.git
synced 2026-03-11 12:41:54 +03:00
392 lines
9.0 KiB
Go
392 lines
9.0 KiB
Go
// Code generated by ogen, DO NOT EDIT.
|
|
|
|
package openapi
|
|
|
|
import (
|
|
"bytes"
|
|
"io"
|
|
"mime"
|
|
"net/http"
|
|
|
|
"github.com/go-faster/errors"
|
|
"github.com/go-faster/jx"
|
|
|
|
"github.com/ogen-go/ogen/ogenerrors"
|
|
"github.com/ogen-go/ogen/validate"
|
|
)
|
|
|
|
func decodeAddPageResponse(resp *http.Response) (res AddPageRes, _ error) {
|
|
switch resp.StatusCode {
|
|
case 201:
|
|
// Code 201.
|
|
ct, _, err := mime.ParseMediaType(resp.Header.Get("Content-Type"))
|
|
if err != nil {
|
|
return res, errors.Wrap(err, "parse media type")
|
|
}
|
|
switch {
|
|
case ct == "application/json":
|
|
buf, err := io.ReadAll(resp.Body)
|
|
if err != nil {
|
|
return res, err
|
|
}
|
|
d := jx.DecodeBytes(buf)
|
|
|
|
var response Page
|
|
if err := func() error {
|
|
if err := response.Decode(d); err != nil {
|
|
return err
|
|
}
|
|
if err := d.Skip(); err != io.EOF {
|
|
return errors.New("unexpected trailing data")
|
|
}
|
|
return nil
|
|
}(); err != nil {
|
|
err = &ogenerrors.DecodeBodyError{
|
|
ContentType: ct,
|
|
Body: buf,
|
|
Err: err,
|
|
}
|
|
return res, err
|
|
}
|
|
return &response, nil
|
|
default:
|
|
return res, validate.InvalidContentType(ct)
|
|
}
|
|
case 400:
|
|
// Code 400.
|
|
ct, _, err := mime.ParseMediaType(resp.Header.Get("Content-Type"))
|
|
if err != nil {
|
|
return res, errors.Wrap(err, "parse media type")
|
|
}
|
|
switch {
|
|
case ct == "application/json":
|
|
buf, err := io.ReadAll(resp.Body)
|
|
if err != nil {
|
|
return res, err
|
|
}
|
|
d := jx.DecodeBytes(buf)
|
|
|
|
var response AddPageBadRequest
|
|
if err := func() error {
|
|
if err := response.Decode(d); err != nil {
|
|
return err
|
|
}
|
|
if err := d.Skip(); err != io.EOF {
|
|
return errors.New("unexpected trailing data")
|
|
}
|
|
return nil
|
|
}(); err != nil {
|
|
err = &ogenerrors.DecodeBodyError{
|
|
ContentType: ct,
|
|
Body: buf,
|
|
Err: err,
|
|
}
|
|
return res, err
|
|
}
|
|
return &response, nil
|
|
default:
|
|
return res, validate.InvalidContentType(ct)
|
|
}
|
|
}
|
|
// Convenient error response.
|
|
defRes, err := func() (res *ErrorStatusCode, err error) {
|
|
ct, _, err := mime.ParseMediaType(resp.Header.Get("Content-Type"))
|
|
if err != nil {
|
|
return res, errors.Wrap(err, "parse media type")
|
|
}
|
|
switch {
|
|
case ct == "application/json":
|
|
buf, err := io.ReadAll(resp.Body)
|
|
if err != nil {
|
|
return res, err
|
|
}
|
|
d := jx.DecodeBytes(buf)
|
|
|
|
var response Error
|
|
if err := func() error {
|
|
if err := response.Decode(d); err != nil {
|
|
return err
|
|
}
|
|
if err := d.Skip(); err != io.EOF {
|
|
return errors.New("unexpected trailing data")
|
|
}
|
|
return nil
|
|
}(); err != nil {
|
|
err = &ogenerrors.DecodeBodyError{
|
|
ContentType: ct,
|
|
Body: buf,
|
|
Err: err,
|
|
}
|
|
return res, err
|
|
}
|
|
return &ErrorStatusCode{
|
|
StatusCode: resp.StatusCode,
|
|
Response: response,
|
|
}, nil
|
|
default:
|
|
return res, validate.InvalidContentType(ct)
|
|
}
|
|
}()
|
|
if err != nil {
|
|
return res, errors.Wrapf(err, "default (code %d)", resp.StatusCode)
|
|
}
|
|
return res, errors.Wrap(defRes, "error")
|
|
}
|
|
|
|
func decodeGetFileResponse(resp *http.Response) (res GetFileRes, _ error) {
|
|
switch resp.StatusCode {
|
|
case 200:
|
|
// Code 200.
|
|
ct, _, err := mime.ParseMediaType(resp.Header.Get("Content-Type"))
|
|
if err != nil {
|
|
return res, errors.Wrap(err, "parse media type")
|
|
}
|
|
switch {
|
|
case ct == "application/pdf":
|
|
reader := resp.Body
|
|
b, err := io.ReadAll(reader)
|
|
if err != nil {
|
|
return res, err
|
|
}
|
|
|
|
response := GetFileOKApplicationPdf{Data: bytes.NewReader(b)}
|
|
return &response, nil
|
|
case ct == "text/html":
|
|
reader := resp.Body
|
|
b, err := io.ReadAll(reader)
|
|
if err != nil {
|
|
return res, err
|
|
}
|
|
|
|
response := GetFileOKTextHTML{Data: bytes.NewReader(b)}
|
|
return &response, nil
|
|
case ct == "text/plain":
|
|
reader := resp.Body
|
|
b, err := io.ReadAll(reader)
|
|
if err != nil {
|
|
return res, err
|
|
}
|
|
|
|
response := GetFileOKTextPlain{Data: bytes.NewReader(b)}
|
|
return &response, nil
|
|
default:
|
|
return res, validate.InvalidContentType(ct)
|
|
}
|
|
case 404:
|
|
// Code 404.
|
|
return &GetFileNotFound{}, nil
|
|
}
|
|
// Convenient error response.
|
|
defRes, err := func() (res *ErrorStatusCode, err error) {
|
|
ct, _, err := mime.ParseMediaType(resp.Header.Get("Content-Type"))
|
|
if err != nil {
|
|
return res, errors.Wrap(err, "parse media type")
|
|
}
|
|
switch {
|
|
case ct == "application/json":
|
|
buf, err := io.ReadAll(resp.Body)
|
|
if err != nil {
|
|
return res, err
|
|
}
|
|
d := jx.DecodeBytes(buf)
|
|
|
|
var response Error
|
|
if err := func() error {
|
|
if err := response.Decode(d); err != nil {
|
|
return err
|
|
}
|
|
if err := d.Skip(); err != io.EOF {
|
|
return errors.New("unexpected trailing data")
|
|
}
|
|
return nil
|
|
}(); err != nil {
|
|
err = &ogenerrors.DecodeBodyError{
|
|
ContentType: ct,
|
|
Body: buf,
|
|
Err: err,
|
|
}
|
|
return res, err
|
|
}
|
|
return &ErrorStatusCode{
|
|
StatusCode: resp.StatusCode,
|
|
Response: response,
|
|
}, nil
|
|
default:
|
|
return res, validate.InvalidContentType(ct)
|
|
}
|
|
}()
|
|
if err != nil {
|
|
return res, errors.Wrapf(err, "default (code %d)", resp.StatusCode)
|
|
}
|
|
return res, errors.Wrap(defRes, "error")
|
|
}
|
|
|
|
func decodeGetPageResponse(resp *http.Response) (res GetPageRes, _ error) {
|
|
switch resp.StatusCode {
|
|
case 200:
|
|
// Code 200.
|
|
ct, _, err := mime.ParseMediaType(resp.Header.Get("Content-Type"))
|
|
if err != nil {
|
|
return res, errors.Wrap(err, "parse media type")
|
|
}
|
|
switch {
|
|
case ct == "application/json":
|
|
buf, err := io.ReadAll(resp.Body)
|
|
if err != nil {
|
|
return res, err
|
|
}
|
|
d := jx.DecodeBytes(buf)
|
|
|
|
var response PageWithResults
|
|
if err := func() error {
|
|
if err := response.Decode(d); err != nil {
|
|
return err
|
|
}
|
|
if err := d.Skip(); err != io.EOF {
|
|
return errors.New("unexpected trailing data")
|
|
}
|
|
return nil
|
|
}(); err != nil {
|
|
err = &ogenerrors.DecodeBodyError{
|
|
ContentType: ct,
|
|
Body: buf,
|
|
Err: err,
|
|
}
|
|
return res, err
|
|
}
|
|
return &response, nil
|
|
default:
|
|
return res, validate.InvalidContentType(ct)
|
|
}
|
|
case 404:
|
|
// Code 404.
|
|
return &GetPageNotFound{}, nil
|
|
}
|
|
// Convenient error response.
|
|
defRes, err := func() (res *ErrorStatusCode, err error) {
|
|
ct, _, err := mime.ParseMediaType(resp.Header.Get("Content-Type"))
|
|
if err != nil {
|
|
return res, errors.Wrap(err, "parse media type")
|
|
}
|
|
switch {
|
|
case ct == "application/json":
|
|
buf, err := io.ReadAll(resp.Body)
|
|
if err != nil {
|
|
return res, err
|
|
}
|
|
d := jx.DecodeBytes(buf)
|
|
|
|
var response Error
|
|
if err := func() error {
|
|
if err := response.Decode(d); err != nil {
|
|
return err
|
|
}
|
|
if err := d.Skip(); err != io.EOF {
|
|
return errors.New("unexpected trailing data")
|
|
}
|
|
return nil
|
|
}(); err != nil {
|
|
err = &ogenerrors.DecodeBodyError{
|
|
ContentType: ct,
|
|
Body: buf,
|
|
Err: err,
|
|
}
|
|
return res, err
|
|
}
|
|
return &ErrorStatusCode{
|
|
StatusCode: resp.StatusCode,
|
|
Response: response,
|
|
}, nil
|
|
default:
|
|
return res, validate.InvalidContentType(ct)
|
|
}
|
|
}()
|
|
if err != nil {
|
|
return res, errors.Wrapf(err, "default (code %d)", resp.StatusCode)
|
|
}
|
|
return res, errors.Wrap(defRes, "error")
|
|
}
|
|
|
|
func decodeGetPagesResponse(resp *http.Response) (res Pages, _ error) {
|
|
switch resp.StatusCode {
|
|
case 200:
|
|
// Code 200.
|
|
ct, _, err := mime.ParseMediaType(resp.Header.Get("Content-Type"))
|
|
if err != nil {
|
|
return res, errors.Wrap(err, "parse media type")
|
|
}
|
|
switch {
|
|
case ct == "application/json":
|
|
buf, err := io.ReadAll(resp.Body)
|
|
if err != nil {
|
|
return res, err
|
|
}
|
|
d := jx.DecodeBytes(buf)
|
|
|
|
var response Pages
|
|
if err := func() error {
|
|
if err := response.Decode(d); err != nil {
|
|
return err
|
|
}
|
|
if err := d.Skip(); err != io.EOF {
|
|
return errors.New("unexpected trailing data")
|
|
}
|
|
return nil
|
|
}(); err != nil {
|
|
err = &ogenerrors.DecodeBodyError{
|
|
ContentType: ct,
|
|
Body: buf,
|
|
Err: err,
|
|
}
|
|
return res, err
|
|
}
|
|
return response, nil
|
|
default:
|
|
return res, validate.InvalidContentType(ct)
|
|
}
|
|
}
|
|
// Convenient error response.
|
|
defRes, err := func() (res *ErrorStatusCode, err error) {
|
|
ct, _, err := mime.ParseMediaType(resp.Header.Get("Content-Type"))
|
|
if err != nil {
|
|
return res, errors.Wrap(err, "parse media type")
|
|
}
|
|
switch {
|
|
case ct == "application/json":
|
|
buf, err := io.ReadAll(resp.Body)
|
|
if err != nil {
|
|
return res, err
|
|
}
|
|
d := jx.DecodeBytes(buf)
|
|
|
|
var response Error
|
|
if err := func() error {
|
|
if err := response.Decode(d); err != nil {
|
|
return err
|
|
}
|
|
if err := d.Skip(); err != io.EOF {
|
|
return errors.New("unexpected trailing data")
|
|
}
|
|
return nil
|
|
}(); err != nil {
|
|
err = &ogenerrors.DecodeBodyError{
|
|
ContentType: ct,
|
|
Body: buf,
|
|
Err: err,
|
|
}
|
|
return res, err
|
|
}
|
|
return &ErrorStatusCode{
|
|
StatusCode: resp.StatusCode,
|
|
Response: response,
|
|
}, nil
|
|
default:
|
|
return res, validate.InvalidContentType(ct)
|
|
}
|
|
}()
|
|
if err != nil {
|
|
return res, errors.Wrapf(err, "default (code %d)", resp.StatusCode)
|
|
}
|
|
return res, errors.Wrap(defRes, "error")
|
|
}
|