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) {
|
c.MustParse(os.Args[1:], func(err error) {
|
||||||
if channel != nil {
|
if channel != nil {
|
||||||
if closeErr := channel.Close(); closeErr != nil {
|
if closeErr := channel.Close(); closeErr != nil {
|
||||||
|
|||||||
Reference in New Issue
Block a user