public function quoteValue($value)
    {
        if ($value === null) {
            return 'NULL';
        }

        if (is_numeric($value)) {
            return $value;
        }

        if ($value === false) {
            return 0;
        }

        if (empty($value)) {
            return '\'\'';
        }

        if (is_array($value)) {
            $values = array_unique($value);
            foreach ($values as $key => $value) {
                $values[$key] = $value === null ? 'NULL' : $this->_adapter->quoteValue($value);
            }

            return $values = implode(', ', $values);
        }

        return $this->_adapter->quoteValue($value);
    }