MCPcopy Create free account
hub / github.com/dbcli/mssql-cli / __init__

Method __init__

mssqlcli/mssql_cli.py:127–209  ·  view source on GitHub ↗
(self, options)

Source from the content-addressed store, hash-verified

125 return default_pager
126
127 def __init__(self, options):
128
129 # Load config.
130 c = self.config = get_config(options.mssqlclirc_file)
131
132 self.initialize_logging()
133 self.logger = logging.getLogger(u'mssqlcli.main')
134
135 self.interactive_mode = options.interactive_mode
136
137 self.table_format = c['main']['table_format']
138 self.decimal_format = c['data_formats']['decimal']
139 self.float_format = c['data_formats']['float']
140 self.null_string = c['main'].get('null_string', '<null>')
141 self.expanded_output = c['main']['expand'] == 'always'
142 self.integrated_auth = options.integrated_auth
143 self.less_chatty = bool(
144 options.less_chatty) or c['main'].as_bool('less_chatty') or self.interactive_mode
145
146 keyword_casing = c['main']['keyword_casing']
147 self.settings = {
148 'casing_file': get_casing_file(c),
149 'generate_casing_file': c['main'].as_bool('generate_casing_file'),
150 'generate_aliases': c['main'].as_bool('generate_aliases'),
151 'asterisk_column_order': c['main']['asterisk_column_order'],
152 'qualify_columns': c['main']['qualify_columns'],
153 'case_column_headers': c['main'].as_bool('case_column_headers'),
154 'search_path_filter': c['main'].as_bool('search_path_filter'),
155 'single_connection': False,
156 'less_chatty': self.less_chatty,
157 'keyword_casing': keyword_casing,
158 }
159
160 if self.interactive_mode:
161 pager = self.set_default_pager(c)
162 self.prompt_session = None
163
164 # set auto_expand to false if less is detected with auto expand
165 self.auto_expand = options.auto_vertical_output \
166 or (c['main']['expand'] == 'auto' and pager != 'less -SRXF')
167 self.multiline = c['main'].as_bool('multi_line')
168 self.multiline_mode = c['main'].get('multi_line_mode', 'tsql')
169 self.vi_mode = c['main'].as_bool('vi')
170 self.prompt_format = options.prompt or c['main'].get('prompt', self.default_prompt)
171 self.row_limit = options.row_limit
172 self.min_num_menu_lines = c['main'].as_int('min_num_menu_lines')
173 self.multiline_continuation_char = c['main']['multiline_continuation_char']
174 self.syntax_style = c['main']['syntax_style']
175 self.cli_style = c['colors']
176 self.output_style = style_factory_output(self.syntax_style, self.cli_style)
177 self.wider_completion_menu = c['main'].as_bool('wider_completion_menu')
178 self.on_error = c['main']['on_error'].upper()
179
180 self.now = dt.datetime.today()
181
182 self.completion_refresher = CompletionRefresher()
183
184 self.query_history = []

Callers

nothing calls this directly

Calls 10

initialize_loggingMethod · 0.95
set_default_pagerMethod · 0.95
get_configFunction · 0.90
get_casing_fileFunction · 0.90
style_factory_outputFunction · 0.90
CompletionRefresherClass · 0.90
MssqlCompleterClass · 0.90
SqlToolsClientClass · 0.90
MssqlCliClientClass · 0.90
getMethod · 0.80

Tested by

no test coverage detected