code: def add_operation_recorder(self, operation_recorder):
          # pylint: disable=line-too-long
            # noqa: E501
          if operation_recorder is None:
              raise ValueError("Invalid value None for new operation recorder")
  
          for recorder in self._operation_recorders:
              # pylint: disable=unidiomatic-typecheck
              if type(recorder) is type(operation_recorder):
                  raise ValueError(
                      _format("Cannot add the same operation recorder class {0} "
                              "multiple times to the same connection",
                              type(operation_recorder)))
          self._operation_recorders.append(operation_recorder)
  
          operation_recorder.reset()
          operation_recorder.stage_wbem_connection(self)
docs: **Experimental:** Add an operation recorder to this connection.
  
          *New in pywbem 0.12 as experimental.*
  
          If the connection already has a recorder with the same class, the
          request to add the recorder is ignored.
  
          Parameters:
  
            operation_recorder (:class:`~pywbem.BaseOperationRecorder` subclass object):
              The operation recorder to be added. Must not be `None`.
  
          Raises:
  
            ValueError: Operation recorder must not be `None`.
            ValueError: Cannot add the same recorder class multiple times.