1
0
mirror of https://github.com/mxpv/podsync.git synced 2024-05-11 05:55:04 +00:00

Update Vimeo client

This commit is contained in:
Maksym Pavlenko
2019-03-24 20:16:11 -07:00
parent 21ff51f4f9
commit 995120b450
3 changed files with 12 additions and 11 deletions

2
go.mod
View File

@@ -32,7 +32,7 @@ require (
github.com/onsi/gomega v1.4.3 // indirect
github.com/pelletier/go-toml v1.2.0 // indirect
github.com/pkg/errors v0.8.0
github.com/silentsokolov/go-vimeo v1.2.0
github.com/silentsokolov/go-vimeo v0.0.0-20190116124215-06829264260c
github.com/sirupsen/logrus v1.2.0
github.com/spf13/afero v1.1.1 // indirect
github.com/spf13/cast v1.2.0 // indirect

2
go.sum
View File

@@ -81,6 +81,8 @@ github.com/pkg/errors v0.8.0 h1:WdK/asTD0HN+q6hsWO3/vpuAkAr+tw6aNJNDFFf0+qw=
github.com/pkg/errors v0.8.0/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0=
github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
github.com/silentsokolov/go-vimeo v0.0.0-20190116124215-06829264260c h1:KhHx/Ta3c9C1gcSo5UhDeo/D4JnhnxJTrlcOEOFiMfY=
github.com/silentsokolov/go-vimeo v0.0.0-20190116124215-06829264260c/go.mod h1:10FeaKUMy5t3KLsYfy54dFrq0rpwcfyKkKcF7vRGIRY=
github.com/silentsokolov/go-vimeo v1.2.0 h1:Xp3Vn8ekcE+b5ExJOrwEytkDd5h6AdfH31NPERAuTGI=
github.com/silentsokolov/go-vimeo v1.2.0/go.mod h1:10FeaKUMy5t3KLsYfy54dFrq0rpwcfyKkKcF7vRGIRY=
github.com/sirupsen/logrus v1.2.0 h1:juTguoYk5qI21pwyTXY3B3Y5cOTH3ZUyZCg1v/mihuo=

View File

@@ -6,7 +6,7 @@ import (
itunes "github.com/mxpv/podcast"
"github.com/pkg/errors"
vimeo "github.com/silentsokolov/go-vimeo"
vimeo "github.com/silentsokolov/go-vimeo/vimeo"
"golang.org/x/net/context"
"golang.org/x/oauth2"
@@ -105,17 +105,16 @@ func (v *VimeoBuilder) getVideoSize(video *vimeo.Video) int64 {
return int64(float64(video.Duration*video.Width*video.Height) * 0.38848958333)
}
type getVideosFunc func(id string, opt *vimeo.ListVideoOptions) ([]*vimeo.Video, *vimeo.Response, error)
type getVideosFunc func(string, ...vimeo.CallOption) ([]*vimeo.Video, *vimeo.Response, error)
func (v *VimeoBuilder) queryVideos(getVideos getVideosFunc, podcast *itunes.Podcast, feed *model.Feed) error {
opt := vimeo.ListVideoOptions{}
opt.Page = 1
opt.PerPage = vimeoDefaultPageSize
added := 0
var (
page = 1
added = 0
)
for {
videos, response, err := getVideos(feed.ItemID, &opt)
videos, response, err := getVideos(feed.ItemID, vimeo.OptPage(page), vimeo.OptPerPage(vimeoDefaultPageSize))
if err != nil {
return errors.Wrapf(err, "failed to query videos (error %d %s)", response.StatusCode, response.Status)
}
@@ -150,7 +149,7 @@ func (v *VimeoBuilder) queryVideos(getVideos getVideosFunc, podcast *itunes.Podc
return nil
}
opt.Page++
page++
}
}
@@ -187,6 +186,6 @@ func NewVimeoBuilder(ctx context.Context, token string) (*VimeoBuilder, error) {
ts := oauth2.StaticTokenSource(&oauth2.Token{AccessToken: token})
tc := oauth2.NewClient(ctx, ts)
client := vimeo.NewClient(tc)
client := vimeo.NewClient(tc, nil)
return &VimeoBuilder{client}, nil
}