cmd/streamdata: show sub-command
This displays metadata by ident. Signed-off-by: Yonah <contrib@gensokyo.uk>
This commit is contained in:
@@ -174,6 +174,37 @@ func main() {
|
||||
},
|
||||
)
|
||||
|
||||
c.NewCommand(
|
||||
"show",
|
||||
"Display metadata of a VOD by identifier",
|
||||
func(args []string) error {
|
||||
if channel == nil {
|
||||
return errors.New("show requires a channel selected")
|
||||
}
|
||||
|
||||
if len(args) != 1 {
|
||||
return errors.New("show requires 1 argument")
|
||||
}
|
||||
|
||||
var ident streamdata.Ident
|
||||
if err := ident.UnmarshalText(
|
||||
unsafe.Slice(unsafe.StringData(args[0]), len(args[0])),
|
||||
); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
if v, err := channel.Load(&ident); err != nil {
|
||||
if !errors.Is(err, os.ErrNotExist) {
|
||||
return err
|
||||
}
|
||||
return syscall.ENOENT
|
||||
} else {
|
||||
printVOD(v)
|
||||
return nil
|
||||
}
|
||||
},
|
||||
)
|
||||
|
||||
c.MustParse(os.Args[1:], func(err error) {
|
||||
if channel != nil {
|
||||
if closeErr := channel.Close(); closeErr != nil {
|
||||
|
||||
Reference in New Issue
Block a user