コード例 #1
0
def get_account_coin_autopayments(manager, wallet, account, user, coin):
    with QueryDataPostProcessor() as pp:
        try:
            coin = Coin.by_ticker(coin)
        except CoinNotDefinedException:
            return pp.process_raw(None).json()
        return pp.process(account.model.autopayments_for(coin)).json()
コード例 #2
0
 def address(self, address):
     hash, txout_type = Coin.by_ticker(
         self.coin).decode_address_and_type(address)
     if hash is None:
         raise ValueError('Cannot decode address %s for coin %s' %
                          (address, self.coin))
     self.pubkeyhash = hash
     self.txout_type = txout_type
コード例 #3
0
ファイル: api.py プロジェクト: cryptobuks1/freshgrlc-wallet
def delete_account_coin_consolidationinfo(manager, wallet, account, user, coin):
    try:
        coin = Coin.by_ticker(coin)
    except CoinNotDefinedException:
        return '', NO_CONTENT

    current_value = account.model.consolidationinfo_for(coin)
    if current_value == None:
        return '', NO_CONTENT

    db = wallet._dbsession
    db.delete(current_value)
    db.commit()
    return '', NO_CONTENT
コード例 #4
0
def delete_account_coin_autopayments(manager, wallet, account, user, coin):
    try:
        coin = Coin.by_ticker(coin)
    except CoinNotDefinedException:
        return '', NO_CONTENT

    current = account.model.autopayments_for(coin)
    if len(current) == 0:
        return '', NO_CONTENT

    db = wallet._dbsession
    for autopay_config in current:
        db.delete(autopay_config)
    db.commit()
    return '', NO_CONTENT
コード例 #5
0
def add_account_coin_autopayment(manager, wallet, account, user, coin):
    try:
        coin = Coin.by_ticker(coin)
    except CoinNotDefinedException:
        return '', NOT_FOUND

    autopayment_info = SetAutoPayInfoRequest(request.get_json())
    autopayment_info.set_context_info(account=account, coin=coin)

    db = wallet._dbsession

    autopayment = autopayment_info.dbobject()
    db.add(autopayment)
    db.commit()

    with QueryDataPostProcessor() as pp:
        return pp.process(autopayment).json()
コード例 #6
0
ファイル: api.py プロジェクト: cryptobuks1/freshgrlc-wallet
def set_account_coin_consolidationinfo(manager, wallet, account, user, coin):
    try:
        coin = Coin.by_ticker(coin)
    except CoinNotDefinedException:
        return '', NOT_FOUND

    requestobj = SetConsolidationInfoRequest(request.get_json())
    requestobj.set_context_info(account=account, coin=coin)

    db = wallet._dbsession

    current_value = account.model.consolidationinfo_for(coin)
    if current_value != None:
        db.delete(current_value)
        db.flush()

    consolidationinfo = requestobj.dbobject()
    db.add(consolidationinfo)
    db.commit()

    with QueryDataPostProcessor() as pp:
        return pp.process(consolidationinfo).json()
コード例 #7
0
def set_account_coin_autopayments(manager, wallet, account, user, coin):
    try:
        coin = Coin.by_ticker(coin)
    except CoinNotDefinedException:
        return '', NOT_FOUND

    db = wallet._dbsession

    for autopayment in account.model.autopayments_for(coin):
        db.delete(autopayment)

    autopayments = []
    for info in request.get_json():
        autopayment_info = SetAutoPayInfoRequest(info)
        autopayment_info.set_context_info(account=account, coin=coin)
        autopayment = autopayment_info.dbobject()
        db.add(autopayment)
        autopayments.append(autopayment)

    db.commit()

    with QueryDataPostProcessor() as pp:
        return pp.process(autopayments).json()
コード例 #8
0
ファイル: models.py プロジェクト: freshgrlc/freshgrlc-wallet
 def _dbsession(self):
     return connectionmanager.database_session(coin=Coin.by_ticker(self.coin))
コード例 #9
0
ファイル: models.py プロジェクト: freshgrlc/freshgrlc-wallet
 def address(self):
     return Coin.by_ticker(self.coin).encode_address(self.pubkeyhash, self.txout_type)