コード例 #1
0
ファイル: config.py プロジェクト: melmothx/jsonbot
 def __init__(self, filename=None, verbose=False, input={}, ddir=None, *args, **kw):
     LazyDict.__init__(self, input, *args, **kw)
     filename = filename or 'mainconfig'
     datadir = ddir or getdatadir()
     dir = datadir + os.sep + 'config'
     if datadir not in filename: cfile = dir + os.sep + filename
     else: cfile = filename
     logging.debug("config - filename is %s" % cfile)
     self.jsondb = None
     try: import waveapi ; self.isdb = True
     except ImportError: self.isdb = False
     if not self.comments: self.comments = {}
     try:
         try: self.fromfile(cfile)
         except IOError:
             logging.warn("can't read config from %s" % self.cfile) 
             import waveapi
             from persist import Persist
             self.jsondb = Persist(cfile)
             self.update(self.jsondb.data)
             self.isdb = True
             logging.debug("config - fromdb - %s - %s" % (self.cfile, str(self)))
     except ImportError:
         handle_exception()
         self.isdb = False
     self.cfile = cfile
     self.dir = dir
     self.filename = filename
     self.init()
     if not self.owner: self.owner = []
     if not self.uuid: self.uuid = str(uuid.uuid4())
コード例 #2
0
ファイル: outputcache.py プロジェクト: Petraea/jsonbot
def set(target, txtlist):
    """ set target entry to list. """
    cache = Persist(getdatadir() + os.sep + 'run' + os.sep + 'outputcache' +
                    os.sep + stripname(target))
    if not cache.data.has_key('msg'): cache.data['msg'] = []
    cache.data['msg'] = txtlist
    cache.save()
コード例 #3
0
ファイル: config.py プロジェクト: melmothx/jsonbot
 def todb(self):
     """ save config to database. """
     cp = dict(self)
     del cp['jsondb']
     if not self.jsondb:
         from jsb.lib.persist import Persist
         self.jsondb = Persist(self.cfile)
     self.jsondb.data = cp
     self.jsondb.save()
コード例 #4
0
ファイル: outputcache.py プロジェクト: melmothx/jsonbot
def get(target):
    """ get output for target. """
    cache = Persist(getdatadir() + os.sep + 'run' + os.sep + 'outputcache' +
                    os.sep + stripname(target))
    try:
        result = cache.data['msg']
        if result: return result
    except KeyError:
        pass
    return []
コード例 #5
0
ファイル: outputcache.py プロジェクト: Petraea/jsonbot
def clear(target):
    """ clear target's outputcache. """
    cache = Persist(getdatadir() + os.sep + 'run' + os.sep + 'outputcache' +
                    os.sep + stripname(target))
    try:
        cache.data['msg'] = []
        cache.save()
    except KeyError:
        pass
    return []
コード例 #6
0
ファイル: gridtrader.py プロジェクト: son1128/gridtrader
def main_init(exchange, grid_trader, persistence_file):
    # exchange.cancelAllOpen()

    logger.info("Building trade grids")
    grid_trader.build_new_grids()

    logger.info("Issuing trades on created grids")
    grid_trader.issue_trades()

    logger.info("Storing GridTrader to disk.")
    Persist(persistence_file).store(grid_trader)
コード例 #7
0
ファイル: raft.py プロジェクト: Wenqisun0415/Raft
 def __init__(self, config, port, state=Follower):
     self.persist = Persist(port, reset=False)
     self.state = state(self)
     self.cluster = config["cluster"]
     self.address = config["address"]
     self.commit_index = 0
     self.last_applied = 0
     self.leader = None
     self.transport = None
     self.client_transport = None
     self.state_machine = {}
     self.state_file = "state_" + str(port)
     self.result = {}
コード例 #8
0
ファイル: main.py プロジェクト: jashug/Grammar
def setup():
    from feed import CategoryFeed
    from scheduler import Jas1Scheduler, SM2Scheduler
    from triage import CategoryReverseTriage
    from pack import CategoryPack
    from persist import Persist, replay
    ordered, qs = get_questions()
    feed = CategoryFeed(ordered)
    pack = CategoryPack(feed, CategoryReverseTriage(),
                        SM2Scheduler(base_interval=60 * 5), qs,
                        Persist("records/records.txt"))
    replay("records/records.txt", pack, qs)
    save(pack)
コード例 #9
0
ファイル: outputcache.py プロジェクト: Petraea/jsonbot
def add(target, txtlist):
    """ add list of txt to target entry. """
    logging.warn("outputcache - adding %s lines" % len(txtlist))
    t = []
    for item in txtlist:
        t.append("[%s] %s" % (hourmin(time.time()), item))
    cache = Persist(getdatadir() + os.sep + 'run' + os.sep + 'outputcache' +
                    os.sep + stripname(target))
    d = cache.data
    if not d.has_key('msg'): d['msg'] = []
    d['msg'].extend(t)
    while len(d['msg']) > 10:
        d['msg'].pop(0)
    cache.save()
コード例 #10
0
ファイル: config.py プロジェクト: melmothx/jsonbot
 def fromdb(self):
     """ read config from database. """
     from jsb.lib.persist import Persist
     logging.info("config - fromdb - %s" % self.cfile)
     tmp = Persist(self.cfile)
     self.update(tmp.data)
コード例 #11
0
 def __init__(self, modelname):
     self.modelname = modelname
     self.result_file = modelname + '.json'
     self.predictor = Predictor(self.modelname)
     self.persister = Persist('../test-images/results/' + self.result_file)
     self.result = []
コード例 #12
0
import discord
from functools import lru_cache
import asyncio
import asyncpg
import os
from botcommand import BotCommand
from credentials import Credentials
from persist import Persist
persist = Persist()
client = discord.Client()
token = os.environ['token']
credentials = Credentials()
credentials.uri = os.environ['DATABASE_URL']
from store.dblayer import DuplicateError
from store.postgres import PGWrapper
db = PGWrapper(credentials)


@client.event
async def on_message(message):
    if message.content.startswith("^register"):
        await register_command(message)
    if message.content.startswith("^count"):
        await get_count(message)
    if message.content.startswith("^top10"):
        await top10(message)
    elif message.content.startswith('[') and message.content[-1] == ']':
        await respond_to_command(message)
    elif message.content.startswith('^randomguess'):
        await random_guess(message)
    elif message.content.startswith('^random'):
コード例 #13
0
ファイル: gridtrader.py プロジェクト: son1128/gridtrader
def main(
    account,
    cancel_all=False,
    init=False,
    monitor=False,
    balances=False,
    fetch_markets=False,
    set_balances=False,
    status_of='',
):
    command_line_args = locals()

    pretty_args, log_filename = prep_app(account, command_line_args)

    user_configo = configo.User(account)

    persistence_file = persistence_file_name(account)

    exchange = user_configo.make_exchangeo()

    display_session_info(pretty_args, exchange)
    grid_trader = GridTrader(exchange, user_configo, account)

    try:

        if cancel_all:
            exchange.cancelall()

        if init:
            logger.info("Initializing...")

            main_init(exchange, grid_trader, persistence_file)

        if monitor:
            logger.info("Evaluating trade activity since last invocation")
            persistence = Persist(persistence_file)
            grid_trader = persistence.retrieve()
            grid_trader.poll()
            persistence.store(grid_trader)

        if balances:
            logger.info("Getting balances")
            display_balances(exchange)

        if fetch_markets:
            logger.info("Fetching markets")
            m = exchange.fetchMarkets()
            print(m)

        if set_balances:
            logger.info("Setting balances")
            _set_balances(exchange, config_file, config)
            main_init(exchange, grid_trader, persistence_file)

        if status_of:
            logger.info("Getting status of order")
            # get_status_of(status_of)

    except Exception as e:
        error_msg = traceback.format_exc()
        logger.info('Aborting: %s', error_msg)
        grid_trader.notify_admin(error_msg)

    display_session_info(pretty_args, exchange, end=True)
コード例 #14
0
    been checked in before, and provides the opportunity to insert
    the call and name for that person from the list.
    
    See https://github.com/fledder/ham-net-scribe for more info
    or to contribute.
"""

from PyQt5.QtWidgets import *
from PyQt5.QtGui import *
from PyQt5.QtCore import (Qt, pyqtSignal, QObject, QEvent)

from persist import Persist
from dataStructures import Station, Script, StationList
from customWidgets import *

p = Persist()

PHONETIC_STYLESHEET = '''
    background-color: rgb(0, 0, 0, 255);
    font-family: "Consolas";
    font-size: 24px;
    font-style: bold;
    color: rgb(128, 255, 255, 255);
    qproperty-alignment: AlignCenter;
    '''


class MainFormWidget(QWidget):
    """
    Class for the main window. 
    """