Open2
【Go】(*mime/multipart.Reader).ReadFormのafero.Fsに受ける版を作る
- ReadFormは一時ファイルのディレクトリにコントロールがないので特定の環境(e.g. coetainer)で困る
- afero.Fsとして受け取れるとfs.FSを受け取るところに渡せてよい
- aferoのMemFsが色々よくない(fileがReadAt interfaceのconcurrent呼びたししてよいなどの規約を守っていないなど)ので作ってみたかった
パラメータは
- maxSize: max memory size
- perFileSize: per file max memory size
- underlying: underlying Fs.
こんなところか?
type MemTempFs struct {
// ... fields ...
}
func New(maxSize, perFielSize int, underlying afero.Fs) *MemTempFs {
return &MemTempFs{
maxSize: maxSize,
perFielSize: perFielSize
underlying: underlying,
}
}