func()

in operationsbus/operation_request.go [59:81]


func (opRequest *OperationRequest) Retry(ctx context.Context, sender sb.SenderInterface) error {
	logger := ctxlogger.GetLogger(ctx)
	logger.Info("Retrying the long running operation.")
	logger.Info(fmt.Sprintf("Struct: %+v", opRequest))

	opRequest.RetryCount++
	logger.Info(fmt.Sprintf("Current retry: %d", opRequest.RetryCount))

	marshalledOperation, err := json.Marshal(opRequest)
	if err != nil {
		logger.Error("Error marshalling operation: " + err.Error())
		return err
	}

	logger.Info("Sending message to Service Bus")
	err = sender.SendMessage(ctx, []byte(marshalledOperation))
	if err != nil {
		logger.Error("Something happened: " + err.Error())
		return err
	}

	return nil
}