Ejemplo n.º 1
0
    def __init__(self, profiler):
        """
        Table of Profile Manager Dialog
        :param profiler: object of class Profiler
        """
        super().__init__()
        self.log = log.getLogger(self.__class__.__name__)
        self.profiler = profiler

        table_font = QFontDatabase.systemFont(QFontDatabase.FixedFont)
        table_font.setPointSize(8)
        self.setFont(table_font)

        self.setStyleSheet('''
QHeaderView::section {
    background-color: #EEEEEE;
    border: 1px solid #DDDDDD;
}''')

        self.setFocusPolicy(Qt.NoFocus)
        self.setColumnCount(len(self.COLUMNS_NAME))
        self.setHorizontalHeaderLabels(self.COLUMNS_NAME)

        for itr, column in enumerate(self.COLUMNS_NAME):
            self.horizontalHeaderItem(itr).setToolTip(column)

        self.feed()
Ejemplo n.º 2
0
    def __init__(self, context, profiler, mode='add', profile=None):
        """
        Dialog to Add new or Edit existing server info in profiler
        :param context: shared properties in application
        :param profiler: object of profiler, keep track of each profile
        :param mode: determine to open dialog in Add/Edit mode.
        :param profile: profile which need changes, passed only when mode='edit'
        """
        super().__init__()
        self.log = log.getLogger(self.__class__.__name__)
        self.context = context
        self.profiler = profiler
        self.mode = mode
        self.profile = profile

        self.profile_name_input = None
        self.server_type_items = ['MySQL', 'PostgreSQL']
        self.server_type_combobox = None
        self.host_input = None
        self.port_input = None
        self.database_input = None
        self.username_input = None
        self.password_input = None

        # noinspection PyTypeChecker
        self.setWindowFlags(self.windowFlags() & ~ Qt.WindowContextHelpButtonHint)
        self.setWindowTitle('Add New Profile')

        self.ui()

        self.exec()
Ejemplo n.º 3
0
    def __init__(self, context):
        """
        Code Editor
        :param context: shared properties in application
        """
        super().__init__()
        self.log = log.getLogger(self.__class__.__name__)

        self.context = context

        self.cursorLocation = None
        self.setUndoRedoEnabled(True)

        font = QFont()
        font.setPointSize(self.context.editor['font.pointSize'])
        font.setFamily(self.context.editor['font.family'])
        font.setWeight(self.context.editor['font.weight'])
        font.setStretch(self.context.editor['font.stretch'])
        self.setFont(font)

        self.lineNumberArea = LineNumberArea(self)

        self.blockCountChanged.connect(self.updateLineNumberAreaWidth)
        self.updateRequest.connect(self.updateLineNumberArea)
        self.cursorPositionChanged.connect(self.highlightCurrentLine)

        self.updateLineNumberAreaWidth(0)
Ejemplo n.º 4
0
    def __init__(self, context, app, editor, engine_manager, file_manager,
                 profiler, result_table):
        """
        :param context: shared properties in application
        :param app: object of QApplication
        :param editor: object of CodeEditor class
        :param engine_manager: object of EngineManager class
        :param file_manager: object of FileManger class
        :param profiler: object of Profiler class
        :param result_table: object of ResultTable class
        """
        super().__init__()
        self.log = log.getLogger(self.__class__.__name__)

        # ARGUMENTS
        self.context = context
        self.app = app
        self.editor = editor
        self.engine_manager = engine_manager
        self.file_manager = file_manager
        self.profiler = profiler
        self.result_table = result_table

        # APP INIT
        self.setWindowTitle('XPQE')
        self.setWindowIcon(QIcon('assets/logo.png'))
        self.move(self.context.window['position'][0],
                  self.context.window['position'][1])
        self.resize(self.context.window['size'][0],
                    self.context.window['size'][1])
        # self.setWindowFlags(self.windowFlags() & ~Qt.WindowMaximizeButtonHint)

        # CUSTOM SHORTCUT
        self.runXSQL_sc = QShortcut(QKeySequence('Ctrl+Return'), self)
        self.runXSQL_sc.activated.connect(
            partial(run_xsql, self.editor, self.engine_manager))

        # CUSTOM VARIABLES
        self.status_bar = None

        # UI-Build Functions call
        self.ui_status_bar()
        self.ui_menu_bar()

        # BODY
        frame = QWidget()

        layout = QHBoxLayout()

        self.editor_and_result_splitter = QSplitter(Qt.Horizontal)
        self.editor_and_result_splitter.addWidget(self.editor)
        self.editor_and_result_splitter.addWidget(self.result_table)
        self.editor_and_result_splitter.setSizes(
            self.context.editor['editorToResultRatio'])

        layout.addWidget(self.editor_and_result_splitter)

        frame.setLayout(layout)

        self.setCentralWidget(frame)
Ejemplo n.º 5
0
 def __init__(self, editor):
     """
     Add line number to given editor
     :param editor: object of editor
     """
     super().__init__(editor)
     self.editor = editor
     self.log = log.getLogger(self.__class__.__name__)
Ejemplo n.º 6
0
    def __init__(self):
        """
        Store all profile in single file and manages
        """
        super().__init__('profiler.ini', QSettings.IniFormat)
        self.log = log.getLogger(self.__class__.__name__)

        self.setFallbacksEnabled(False)
        self.log.info(self.fileName())

        self.list = self.value('profiler', [], list)
Ejemplo n.º 7
0
    def __init__(self, context, editor):
        """
        Settings Dialog
        :param context: shared properties in application
        :param editor: object of CodeEditor class
        """
        super().__init__()
        self.log = log.getLogger(self.__class__.__name__)

        self.context = context
        self.editor = editor

        self.tab_widget = None
        self.font_size_input = None
        self.font_family_input = None
        self.font_family_temp_select = self.context.editor['font.family']
        self.font_weight_input = None
        self.font_weight_types = [
            QFont.Light, QFont.ExtraLight, QFont.Light, QFont.Normal,
            QFont.Medium, QFont.DemiBold, QFont.Bold, QFont.ExtraBold,
            QFont.Black
        ]
        self.font_weight_type_names = [
            'Light', 'Extra Light', 'Light', 'Normal', 'Medium', 'Demi Bold',
            'Bold', 'ExtraBold', 'Black'
        ]
        self.font_stretch_input = None
        self.font_stretch_types = [
            QFont.UltraCondensed, QFont.ExtraCondensed, QFont.Condensed,
            QFont.SemiCondensed, QFont.Unstretched, QFont.SemiExpanded,
            QFont.Expanded, QFont.ExtraExpanded, QFont.UltraExpanded
        ]
        self.font_stretch_type_names = [
            'Ultra Condensed', 'Extra Condensed', 'Condensed',
            'Semi Condensed', 'Unstretched', 'Semi Expanded', 'Expanded',
            'Extra Expanded', 'Ultra Expanded'
        ]
        self.auto_close_brackets_input = None
        self.auto_close_brackets_types = ['Always', 'Never']
        self.auto_close_quotes_input = None
        self.auto_close_quotes_types = ['Always', 'Never']
        self.result_render_count_input = None

        # noinspection PyTypeChecker
        self.setWindowFlags(self.windowFlags()
                            & ~Qt.WindowContextHelpButtonHint)
        self.setWindowTitle('Settings')

        self.ui()

        self.exec()
Ejemplo n.º 8
0
    def __init__(self):
        """
        About Dialog
        """
        super().__init__()
        self.log = log.getLogger(self.__class__.__name__)

        # noinspection PyTypeChecker
        self.setWindowFlags(self.windowFlags()
                            & ~Qt.WindowContextHelpButtonHint)
        self.setWindowTitle('About')

        self.ui()

        self.exec()
Ejemplo n.º 9
0
    def __init__(self, context, profile, result_table=None):
        """
        Query Engine of PostgreSQL database
        :param context: shared properties in application
        :param profile: object of Profile class, contain all information regarding server connection
        :param result_table: object of ResultTable class, to populate result into table
        """
        self.log = log.getLogger(self.__class__.__name__)

        self.context = context
        self.profile = profile
        self.resultTable = result_table

        self.con = None
        self.cursor = None  # Cursor
        self.result = None
Ejemplo n.º 10
0
    def __init__(self):
        """
        Context class to keep track of all shared properties
        """
        self.log = log.getLogger(self.__class__.__name__)

        self.settings = Settings()
        self.log.info('Settings File Path: {}'.format(
            self.settings.fileName()))

        self.editor = dict()
        self.server = dict()
        self.window = dict()
        self.xpqe = dict()

        self.loadSettings()
Ejemplo n.º 11
0
    def __init__(self, context, profiler):
        """
        Profile Manager Dialog
        :param context: shared properties in application
        :param profiler: object of class Profiler
        """
        super().__init__()
        self.log = log.getLogger(self.__class__.__name__)
        self.context = context
        self.profiler = profiler
        self.profileTable = ProfileTable(self.profiler)

        # noinspection PyTypeChecker
        self.setWindowFlags(self.windowFlags() & ~ Qt.WindowContextHelpButtonHint)
        self.setWindowTitle('Profile Manager')

        self.ui()

        self.exec()
Ejemplo n.º 12
0
    def __init__(self, context):
        """
        Table used to display result of executed query
        """
        super().__init__()
        self.log = log.getLogger(self.__class__.__name__)

        self.context = context

        self.maxRenderRecords = self.context.editor['result.renderCount']
        self.resultCount = None

        # Set Font Style and Size
        table_font = QFontDatabase.systemFont(QFontDatabase.FixedFont)
        table_font.setPointSize(8)
        self.setFont(table_font)

        self.setStyleSheet('''
QHeaderView::section {
    background-color: #EEEEEE;
    border: 1px solid #DDDDDD;
}''')
from corpus_indexer import corpus_indexer
from keywords_extractor import keywords_extractor
from logger import log
logger = log.getLogger()


class index_keyword_updater():
    def update():
        indexed_doc_result = corpus_indexer.index_all()
        logger.info("Index all Done")
        extract_keywords = keywords_extractor()
        insertkeywords = extract_keywords.refresh_autosuggest_keywords_list()
        logger.info("Keyword Extractor Done")
Ejemplo n.º 14
0
from oslo_config import cfg
from oslo_config import types
import os
from logger.log import getLogger

# GENERATE THE LOG PATH FROM CURRENT FILE NAME
logpath = '/var/log/' + os.path.splitext(
    os.path.basename(__file__))[0] + '.log'

LOG = getLogger(__name__, logpath)

PortType = types.Integer(1, 65535)


def do_register_opts(opts, group=None, ignore_errors=False):
    try:
        cfg.CONF.register_opts(opts, group=group)
        LOG.info("Into function do_register")
    except:
        if not ignore_errors:
            raise


def do_register_cli_opts(opt, ignore_errors=False):
    # TODO: This function has broken name, it should work with lists :/
    if not isinstance(opt, (list, tuple)):
        opts = [opt]
    else:
        opts = opt
    LOG.info("The opts is")
    LOG.info(opts)
import six
import mongoengine
import os
from logger import log as logging

# GENERATE THE LOG PATH FROM CURRENT FILE NAME
logpath = os.path.splitext(os.path.basename(__file__))[0] + '.log'
LOG = logging.getLogger(__name__)

#https://dbader.org/blog/meaning-of-underscores-in-python

def _db_connect(db_name, db_host, db_port, username=None, password=None):

#check this https://code.cognizant.com/avm-chatops/stackstorm-file-changes/blob/master/stackstorm/st2/lib/python2.7/site-packages/st2common/models/db/__init__.py