@@ -14,19 +14,20 @@ import (
14
14
15
15
"github.com/minecrafter/sage/repository"
16
16
"github.com/minecrafter/sage/util"
17
+ "github.com/pkg/errors"
17
18
)
18
19
19
20
type MavenRetrieveHandler struct {
20
21
root string
21
- metadataStore repository.MetadataStore
22
- storageStore repository.StorageStore
22
+ MetadataStore repository.MetadataStore
23
+ StorageStore repository.StorageStore
23
24
}
24
25
25
26
func NewMavenRetrieveHandler (path string , metadataStore repository.MetadataStore , storageStore repository.StorageStore ) MavenRetrieveHandler {
26
27
return MavenRetrieveHandler {
27
28
root : path ,
28
- metadataStore : metadataStore ,
29
- storageStore : storageStore ,
29
+ MetadataStore : metadataStore ,
30
+ StorageStore : storageStore ,
30
31
}
31
32
}
32
33
@@ -60,7 +61,7 @@ func (h *MavenRetrieveHandler) GetMavenFile(w http.ResponseWriter, r *http.Reque
60
61
}
61
62
62
63
func (h * MavenRetrieveHandler ) servePackageListing (w http.ResponseWriter , r * http.Request ) {
63
- ids , err := h .metadataStore .GetAllIDs ()
64
+ ids , err := h .MetadataStore .GetAllIDs ()
64
65
if err != nil {
65
66
log .Printf ("Unable to get package ID list: %s" , err .Error ())
66
67
util .DoSpecificError (w , err )
@@ -78,14 +79,14 @@ func (h *MavenRetrieveHandler) servePackageListing(w http.ResponseWriter, r *htt
78
79
79
80
func (h * MavenRetrieveHandler ) serveVersionListing (w http.ResponseWriter , r * http.Request , subtype string ) {
80
81
stripped := strings .TrimPrefix (strings .TrimSuffix (subtype , ".json" ), "/api/packages/" )
81
- pkg , err := h .metadataStore .FindByID (stripped )
82
+ pkg , err := h .MetadataStore .FindByID (stripped )
82
83
if err != nil {
83
84
if err == repository .ErrPackageNotFound {
84
85
// package not found
85
86
util .Do404 (w )
86
87
} else {
87
88
log .Printf ("Unable to lookup package %s: %s" , stripped , err .Error ())
88
- util .DoSpecificError (w , err )
89
+ util .DoSpecificError (w , errors . WithStack ( err ) )
89
90
}
90
91
return
91
92
}
@@ -149,7 +150,7 @@ func (h *MavenRetrieveHandler) serveMavenMetadata(w http.ResponseWriter, path st
149
150
id := getPackageID (path , false )
150
151
151
152
// get package metadata
152
- metadata , err := h .metadataStore .FindByID (id )
153
+ metadata , err := h .MetadataStore .FindByID (id )
153
154
if err != nil {
154
155
if err == repository .ErrPackageNotFound {
155
156
// package not found
@@ -173,7 +174,7 @@ func (h *MavenRetrieveHandler) serveMavenHash(w http.ResponseWriter, path string
173
174
version := getPackageVersion (path )
174
175
175
176
// get package metadata
176
- metadata , err := h .metadataStore .FindByID (id )
177
+ metadata , err := h .MetadataStore .FindByID (id )
177
178
if err != nil {
178
179
if err == repository .ErrPackageNotFound {
179
180
// package not found
@@ -215,7 +216,7 @@ func (h *MavenRetrieveHandler) serveMavenFile(w http.ResponseWriter, r *http.Req
215
216
version := getPackageVersion (path )
216
217
217
218
// get package metadata
218
- metadata , err := h .metadataStore .FindByID (id )
219
+ metadata , err := h .MetadataStore .FindByID (id )
219
220
if err != nil {
220
221
if err == repository .ErrPackageNotFound {
221
222
// package not found
@@ -237,7 +238,7 @@ func (h *MavenRetrieveHandler) serveMavenFile(w http.ResponseWriter, r *http.Req
237
238
if ! exists {
238
239
break
239
240
}
240
- reader , err := h .storageStore .ReadByID (data .ID )
241
+ reader , err := h .StorageStore .ReadByID (data .ID )
241
242
if err != nil {
242
243
util .DoSpecificError (w , err )
243
244
} else {
@@ -271,7 +272,7 @@ func (h *MavenRetrieveHandler) PutMavenFile(w http.ResponseWriter, r *http.Reque
271
272
version := getPackageVersion (path )
272
273
273
274
// Copy body to new storage file. Use io.TeeReader to allow us to calculate hashes at the same time.
274
- writer , sid , err := h .storageStore .Write ()
275
+ writer , sid , err := h .StorageStore .Write ()
275
276
if err != nil {
276
277
log .Printf ("Unable to create content: %s" , err .Error ())
277
278
util .DoSpecificError (w , err )
@@ -295,7 +296,7 @@ func (h *MavenRetrieveHandler) PutMavenFile(w http.ResponseWriter, r *http.Reque
295
296
fileName := path [strings .LastIndex (path , "/" ):]
296
297
297
298
// create version and package if needed
298
- metadata , err := h .metadataStore .FindByID (id )
299
+ metadata , err := h .MetadataStore .FindByID (id )
299
300
if err != nil {
300
301
if err == repository .ErrPackageNotFound {
301
302
// package not found, create
@@ -339,7 +340,7 @@ func (h *MavenRetrieveHandler) PutMavenFile(w http.ResponseWriter, r *http.Reque
339
340
}
340
341
}
341
342
342
- if err = h .metadataStore .Store (* metadata ); err != nil {
343
+ if err = h .MetadataStore .Store (* metadata ); err != nil {
343
344
log .Printf ("Unable to create version: %s" , err .Error ())
344
345
util .DoSpecificError (w , err )
345
346
} else {
0 commit comments