本文整理汇总了Golang中github.com/APTrust/exchange/models.GenericFile.OriginalPathWithBagName方法的典型用法代码示例。如果您正苦于以下问题:Golang GenericFile.OriginalPathWithBagName方法的具体用法?Golang GenericFile.OriginalPathWithBagName怎么用?Golang GenericFile.OriginalPathWithBagName使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类github.com/APTrust/exchange/models.GenericFile
的用法示例。
在下文中一共展示了GenericFile.OriginalPathWithBagName方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: getReadCloser
// Returns a reader that can read the file from within the tar archive.
// The S3 uploader uses this reader to stream data to S3 and Glacier.
func (storer *APTStorer) getReadCloser(ingestState *models.IngestState, gf *models.GenericFile) (*fileutil.TarFileIterator, io.ReadCloser) {
tarFilePath := ingestState.IngestManifest.Object.IngestTarFilePath
tfi, err := fileutil.NewTarFileIterator(tarFilePath)
if err != nil {
msg := fmt.Sprintf("Can't get TarFileIterator for %s: %v", tarFilePath, err)
ingestState.IngestManifest.StoreResult.AddError(msg)
return nil, nil
}
origPathWithBagName, err := gf.OriginalPathWithBagName()
if err != nil {
ingestState.IngestManifest.StoreResult.AddError(err.Error())
return nil, nil
}
readCloser, err := tfi.Find(origPathWithBagName)
if err != nil {
msg := fmt.Sprintf("Can't get reader for %s: %v", gf.Identifier, err)
ingestState.IngestManifest.StoreResult.AddError(msg)
if readCloser != nil {
readCloser.Close()
}
return nil, nil
}
return tfi, readCloser
}
示例2: TestOriginalPathWithBagName
func TestOriginalPathWithBagName(t *testing.T) {
genericFile := models.GenericFile{}
genericFile.IntellectualObjectIdentifier = "uc.edu/cin.675812"
// Top-level custom tag file
genericFile.Identifier = "uc.edu/cin.675812/tagmanifest-sha256.txt"
origPath, err := genericFile.OriginalPathWithBagName()
require.Nil(t, err)
assert.Equal(t, "cin.675812/tagmanifest-sha256.txt", origPath)
// Payload file
genericFile.Identifier = "uc.edu/cin.675812/data/object.properties"
origPath, err = genericFile.OriginalPathWithBagName()
require.Nil(t, err)
assert.Equal(t, "cin.675812/data/object.properties", origPath)
// Nested custom tag file
genericFile.Identifier = "uc.edu/cin.675812/custom/tag/dir/special_info.xml"
origPath, err = genericFile.OriginalPathWithBagName()
require.Nil(t, err)
assert.Equal(t, "cin.675812/custom/tag/dir/special_info.xml", origPath)
}