diff options
| author | Nick White <git@njw.name> | 2021-01-26 14:56:10 +0000 | 
|---|---|---|
| committer | Nick White <git@njw.name> | 2021-01-26 14:56:10 +0000 | 
| commit | 5c3cee66a90ce6ef87e125b3bf011a6903d38083 (patch) | |
| tree | be1347c79389b232150227bd8489db3fabb415ac /cmd | |
| parent | 54150b54cd06e3deba44e73b151070b74a4d8e76 (diff) | |
Make ListObjectsWithMeta generic again and create a specialised ListObjectWithMeta for single file listing, so we can still be as fast, but do not have a misleading api
Diffstat (limited to 'cmd')
| -rw-r--r-- | cmd/lspipeline/main.go | 15 | 
1 files changed, 6 insertions, 9 deletions
diff --git a/cmd/lspipeline/main.go b/cmd/lspipeline/main.go index 8980c59..131ff12 100644 --- a/cmd/lspipeline/main.go +++ b/cmd/lspipeline/main.go @@ -36,7 +36,7 @@ type LsPipeliner interface {  	AnalyseQueueId() string  	GetQueueDetails(url string) (string, string, error)  	GetInstanceDetails() ([]bookpipeline.InstanceDetails, error) -	ListObjectsWithMeta(bucket string, prefix string) ([]bookpipeline.ObjMeta, error) +	ListObjectWithMeta(bucket string, prefix string) (bookpipeline.ObjMeta, error)  	ListObjectPrefixes(bucket string) ([]string, error)  	WIPStorageId() string  } @@ -107,20 +107,17 @@ func (o ObjMetas) Less(i, j int) bool {  func getBookDetails(conn LsPipeliner, key string) (date time.Time, done bool, err error) {  	// First try to get the graph.png file from the book, which marks  	// it as done -	objs, err := conn.ListObjectsWithMeta(conn.WIPStorageId(), key+"graph.png") -	if err == nil && len(objs) > 0 { -		return objs[0].Date, true, nil +	obj, err := conn.ListObjectWithMeta(conn.WIPStorageId(), key+"graph.png") +	if err == nil { +		return obj.Date, true, nil  	}  	// Otherwise get any file from the book to get a date to sort by -	objs, err = conn.ListObjectsWithMeta(conn.WIPStorageId(), key) +	obj, err = conn.ListObjectWithMeta(conn.WIPStorageId(), key)  	if err != nil {  		return time.Time{}, false, err  	} -	if len(objs) == 0 { -		return time.Time{}, false, fmt.Errorf("No files found for book %s", key) -	} -	return objs[0].Date, false, nil +	return obj.Date, false, nil  }  // getBookDetailsChan gets the details for a book putting it into either the  | 
