# Path: impala/util.py
# def _escape(s):
#     e = s
#     e = e.replace('\\', '\\\\')
#     e = e.replace('\n', '\\n')
#     e = e.replace('\r', '\\r')
#     e = e.replace("'", "\\'")
#     e = e.replace('"', '\\"')
#     log.debug('%s => %s', s, e)
#     return e
# 
# Path: impala/error.py
# class Error(Exception):
#     pass
# 
# class Warning(Exception):
#     pass
# 
# class InterfaceError(Error):
#     pass
# 
# class DatabaseError(Error):
#     pass
# 
# class InternalError(DatabaseError):
#     pass
# 
# class OperationalError(DatabaseError):
#     pass
# 
# class ProgrammingError(DatabaseError):
#     pass
# 
# class IntegrityError(DatabaseError):
#     pass
# 
# class DataError(DatabaseError):
#     pass
# 
# class NotSupportedError(DatabaseError):
#     pass


import datetime
import re
import six
from six import reraise
from impala.util import _escape
from impala.error import (  # pylint: disable=unused-import
    Error, Warning, InterfaceError, DatabaseError, InternalError,
    OperationalError, ProgrammingError, IntegrityError, DataError,
    NotSupportedError)
        from thrift_sasl import TSaslClientTransport
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

from __future__ import absolute_import




class Connection(object):
    # PEP 249
    # Connection objects are associated with a TCLIService.Client thrift
    # service
    # it's instantiated with an alive TCLIService.Client

    def close(self):
        # PEP 249
        raise NotImplementedError

    def commit(self):
        # PEP 249
        raise NotImplementedError

    def rollback(self):
        # PEP 249
        raise NotImplementedError


# Path: impala/util.py
# def _escape(s):
#     e = s
#     e = e.replace('\\', '\\\\')
#     e = e.replace('\n', '\\n')
#     e = e.replace('\r', '\\r')
#     e = e.replace("'", "\\'")
#     e = e.replace('"', '\\"')
#     log.debug('%s => %s', s, e)
#     return e
# 
# Path: impala/error.py
# class Error(Exception):
#     pass
# 
# class Warning(Exception):
#     pass
# 
# class InterfaceError(Error):
#     pass
# 
# class DatabaseError(Error):
#     pass
# 
# class InternalError(DatabaseError):
#     pass
# 
# class OperationalError(DatabaseError):
#     pass
# 
# class ProgrammingError(DatabaseError):
#     pass
# 
# class IntegrityError(DatabaseError):
#     pass
# 
# class DataError(DatabaseError):
#     pass
# 
# class NotSupportedError(DatabaseError):
#     pass


# Path: impala/interface.py
import datetime
import re
import six
from six import reraise
from impala.util import _escape
from impala.error import (  # pylint: disable=unused-import
    Error, Warning, InterfaceError, DatabaseError, InternalError,
    OperationalError, ProgrammingError, IntegrityError, DataError,
    NotSupportedError)
        from thrift_sasl import TSaslClientTransport

#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

from __future__ import absolute_import




class Connection(object):
    # PEP 249
    # Connection objects are associated with a TCLIService.Client thrift
    # service
    # it's instantiated with an alive TCLIService.Client

    def close(self):
        # PEP 249
        raise NotImplementedError

    def commit(self):
        # PEP 249
        raise NotImplementedError

    def rollback(self):
        # PEP 249
        raise NotImplementedError


    def cursor(self, user=None, configuration=None, convert_types=True):