code: def add_condition(self, name, cond_class):
          
          # Has this condition type already been defined?
          if name in self.conditions:
              self._log.warn('Overwriting an existing Condition Type class: {type}'.format(type=name))
  
          if not issubclass(cond_class, ConditionType):
              self._log.error('Condition Type class must implement the base ConditionType interface, please review the '
                              'documentation on defining custom condition types. (Refusing to set the condition type '
                              '"{type}")'.format(type=name))
              return
  
          self.conditions[name] = cond_class(name)
docs: Add a new custom condition type parser
          :param name: The name of the condition type
          :type  name: str
  
          :param cond_class: The Class
          :return: