// OpenBundle opens the provided key in the given store, and wraps it in a // bagit reader. func OpenBundle(s store.Store, key string) (*BagreaderCloser, error) { stream, size, err := s.Open(key) if err != nil { return nil, err } var result *BagreaderCloser r, err := bagit.NewReader(stream, size) if err == nil { result = &BagreaderCloser{ Reader: r, f: stream, } } else { stream.Close() } return result, err }