当前位置: 首页>>代码示例>>Java>>正文


Java InsufficientMoneyException类代码示例

本文整理汇总了Java中com.google.bitcoin.core.InsufficientMoneyException的典型用法代码示例。如果您正苦于以下问题:Java InsufficientMoneyException类的具体用法?Java InsufficientMoneyException怎么用?Java InsufficientMoneyException使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。


InsufficientMoneyException类属于com.google.bitcoin.core包,在下文中一共展示了InsufficientMoneyException类的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: makePaymentTo

import com.google.bitcoin.core.InsufficientMoneyException; //导入依赖的package包/类
public void makePaymentTo() throws InsufficientMoneyException {
    // Add new key
    final ECKey newKey = new ECKey();
    bitcoinListener.getKit().wallet().addKey(newKey);
    final Wallet.SendRequest req = Wallet.SendRequest.to(bitcoinListener.getNetworkParameters(), newKey, BigInteger.valueOf(1000000));

    final NetworkParameters params = bitcoinListener.getNetworkParameters();
    logger.info("Added new key to receive payment " + newKey.toAddress(params));

    bitcoinListener.getKit().wallet().sendCoins(req);
}
 
开发者ID:killbill,项目名称:killbill-bitcoin-plugin,代码行数:12,代码来源:TestBitcoinListener.java

示例2: sendCoinsOffline

import com.google.bitcoin.core.InsufficientMoneyException; //导入依赖的package包/类
public final void sendCoinsOffline(@Nonnull final SendRequest sendRequest)
{
	backgroundHandler.post(new Runnable()
	{
		@Override
		public void run()
		{
               try {
			final Transaction transaction = wallet.sendCoinsOffline(sendRequest); // can take long


			callbackHandler.post(new Runnable()
			{
				@Override
				public void run()
				{
					if (transaction != null)
						onSuccess(transaction);
					else
						onFailure();
               	}
			});

               } catch(InsufficientMoneyException x)
               {
                   //HashEngineering added this
               }
		}
	});
}
 
开发者ID:9cat,项目名称:templecoin-android-wallet,代码行数:31,代码来源:SendCoinsOfflineTask.java

示例3: PaymentChannelClientConnection

import com.google.bitcoin.core.InsufficientMoneyException; //导入依赖的package包/类
/**
 * Attempts to open a new connection to and open a payment channel with the given host and port, blocking until the
 * connection is open
 *
 * @param server The host/port pair where the server is listening.
 * @param timeoutSeconds The connection timeout and read timeout during initialization. This should be large enough
 *                       to accommodate ECDSA signature operations and network latency.
 * @param wallet The wallet which will be paid from, and where completed transactions will be committed.
 *               Must already have a {@link StoredPaymentChannelClientStates} object in its extensions set.
 * @param myKey A freshly generated keypair used for the multisig contract and refund output.
 * @param maxValue The maximum value this channel is allowed to request
 * @param serverId A unique ID which is used to attempt reopening of an existing channel.
 *                 This must be unique to the server, and, if your application is exposing payment channels to some
 *                 API, this should also probably encompass some caller UID to avoid applications opening channels
 *                 which were created by others.
 *
 * @throws IOException if there's an issue using the network.
 * @throws ValueOutOfRangeException if the balance of wallet is lower than maxValue.
 */
public PaymentChannelClientConnection(InetSocketAddress server, int timeoutSeconds, Wallet wallet, ECKey myKey,
                                      BigInteger maxValue, String serverId) throws IOException, ValueOutOfRangeException {
    // Glue the object which vends/ingests protobuf messages in order to manage state to the network object which
    // reads/writes them to the wire in length prefixed form.
    channelClient = new PaymentChannelClient(wallet, myKey, maxValue, Sha256Hash.create(serverId.getBytes()),
          new PaymentChannelClient.ClientConnection() {
        @Override
        public void sendToServer(Protos.TwoWayChannelMessage msg) {
            wireParser.write(msg);
        }

        @Override
        public void destroyConnection(PaymentChannelCloseException.CloseReason reason) {
            channelOpenFuture.setException(new PaymentChannelCloseException("Payment channel client requested that the connection be closed: " + reason, reason));
            wireParser.closeConnection();
        }

        @Override
        public void channelOpen(boolean wasInitiated) {
            wireParser.setSocketTimeout(0);
            // Inform the API user that we're done and ready to roll.
            channelOpenFuture.set(PaymentChannelClientConnection.this);
        }
    });

    // And glue back in the opposite direction - network to the channelClient.
    wireParser = new ProtobufParser<Protos.TwoWayChannelMessage>(new ProtobufParser.Listener<Protos.TwoWayChannelMessage>() {
        @Override
        public void messageReceived(ProtobufParser handler, Protos.TwoWayChannelMessage msg) {
            try {
                channelClient.receiveMessage(msg);
            } catch (InsufficientMoneyException e) {
                // We should only get this exception during INITIATE, so channelOpen wasn't called yet.
                channelOpenFuture.setException(e);
            }
        }

        @Override
        public void connectionOpen(ProtobufParser handler) {
            channelClient.connectionOpen();
        }

        @Override
        public void connectionClosed(ProtobufParser handler) {
            channelClient.connectionClosed();
            channelOpenFuture.setException(new PaymentChannelCloseException("The TCP socket died",
                    PaymentChannelCloseException.CloseReason.CONNECTION_CLOSED));
        }
    }, Protos.TwoWayChannelMessage.getDefaultInstance(), Short.MAX_VALUE, timeoutSeconds*1000);

    // Initiate the outbound network connection. We don't need to keep this around. The wireParser object will handle
    // things from here on out.
    new NioClient(server, wireParser, timeoutSeconds * 1000);
}
 
开发者ID:HashEngineering,项目名称:megacoinj,代码行数:74,代码来源:PaymentChannelClientConnection.java

示例4: main

import com.google.bitcoin.core.InsufficientMoneyException; //导入依赖的package包/类
public static void main(String[] args) throws InsufficientMoneyException {

        final BitcoinConfig config = new BitcoinConfig() {
            @Override
            public boolean shouldGenerateKey() {
                return false;
            }

            @Override
            public int getConfidenceBlockDepth() {
                return 1;
            }

            @Override
            public String getInstallDirectory() {
                return DEFAULT_INSTALL_DIR;
            }

            @Override
            public String getNetworkName() {
                return NETWORK;
            }

            @Override
            public List<String> getKillbillBitcoinPlugins() {
                return Collections.singletonList("killbill-coinbase");
            }

            @Override
            public String getForwardBankHash() {
                return null;
            }

            @Override
            public Long getMinForwardBalance() {
                return null;
            }

            @Override
            public TimeSpan getForwardBankInterval() {
                return null;
            }

        };
        final TestBitcoinListener test = new TestBitcoinListener(config);
        test.initializeBitcoinListener();
        test.makePaymentTo();
    }
 
开发者ID:killbill,项目名称:killbill-bitcoin-plugin,代码行数:49,代码来源:TestBitcoinListener.java

示例5: receiveMessage

import com.google.bitcoin.core.InsufficientMoneyException; //导入依赖的package包/类
/**
 * Called when a message is received from the server. Processes the given message and generates events based on its
 * content.
 */
void receiveMessage(Protos.TwoWayChannelMessage msg) throws InsufficientMoneyException;
 
开发者ID:HashEngineering,项目名称:megacoinj,代码行数:6,代码来源:IPaymentChannelClient.java


注:本文中的com.google.bitcoin.core.InsufficientMoneyException类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。