Skip to content
Snippets Groups Projects

Resolve "Implement missing functionality of subscription management"

1 file
+ 46
0
Compare changes
  • Side-by-side
  • Inline
@@ -35,3 +35,49 @@ func GetAll(ctx context.Context, addr string) (*subpb.GetAllResponse, error) {
return subClient.GetAll(ctx, req)
}
// Get fetches detailed info for one specific available subscription.
func Get(ctx context.Context, addr string, subID string) (*subpb.GetResponse, error) {
subClient, err := nbi.SubManagementClient(addr, dialOptions...)
if err != nil {
return nil, err
}
req := &subpb.GetRequest{
Timestamp: time.Now().UnixNano(),
Subid: subID,
}
return subClient.Get(ctx, req)
}
// Delete stops and removes one specific running subscription is a no-op if object connected to ID does not exist.
func Delete(ctx context.Context, addr string, subID string) (*subpb.DeleteResponse, error) {
subClient, err := nbi.SubManagementClient(addr, dialOptions...)
if err != nil {
return nil, err
}
req := &subpb.DeleteRequest{
Timestamp: time.Now().UnixNano(),
Subid: subID,
}
return subClient.Delete(ctx, req)
}
// Add creates a new subscription for the network element matching the provided ID using the provided subscribe options.
func Add(ctx context.Context, addr string, mneID string, subscribeOptions *subpb.Subscription) (*subpb.AddResponse, error) {
subClient, err := nbi.SubManagementClient(addr, dialOptions...)
if err != nil {
return nil, err
}
req := &subpb.AddRequest{
Timestamp: time.Now().UnixNano(),
Mneid: mneID,
Subscription: subscribeOptions,
}
return subClient.Add(ctx, req)
}
Loading