/** * @param string $address * @param $coinSymbol * @param $token * @return Address */ public function getAddress($address, $coinSymbol, $token) { $apiContext = $this->apiContextFactory->getApiContext($coinSymbol, $token); $addressClient = new AddressClient($apiContext); $address = $addressClient->get($address); return $address; }
<?php // Run on console: // php -f .\sample\address-api\AddressEndpoint.php require __DIR__ . '/../bootstrap.php'; use BlockCypher\Auth\SimpleTokenCredential; use BlockCypher\Client\AddressClient; use BlockCypher\Rest\ApiContext; $apiContext = ApiContext::create('main', 'btc', 'v1', new SimpleTokenCredential('c0afcccdde5081d6429de37d16166ead'), array('mode' => 'sandbox', 'log.LogEnabled' => true, 'log.FileName' => 'BlockCypher.log', 'log.LogLevel' => 'DEBUG')); $addressClient = new AddressClient($apiContext); $address = $addressClient->get('1DEP8i3QJCsomS4BSMY2RpU1upv62aGvhD'); ResultPrinter::printResult("Get Address", "Address", $address->getAddress(), null, $address);
/** * @dataProvider mockProviderGetParamsValidation * @param AddressClient $obj * @param PHPUnit_Framework_MockObject_MockObject|ApiContext $mockApiContext * @param PHPUnit_Framework_MockObject_MockObject|BlockCypherRestCall $mockBlockCypherRestCall * @param $params * @expectedException \InvalidArgumentException */ public function testGetMultipleParamsValidationForParams($obj, $mockApiContext, $mockBlockCypherRestCall, $params) { $mockBlockCypherRestCall->expects($this->any())->method('execute')->will($this->returnValue('[' . AddressTest::getJson() . ']')); $addressList = array(AddressTest::getObject()->getAddress()); $obj->get($addressList, $params, $mockApiContext, $mockBlockCypherRestCall); }
/** * @param $walletName * @param $coinSymbol * @param $token * @return BigMoney|null * @throws BlockCypherConnectionException * @throws \BlockCypher\Exception\BlockCypherConfigurationException * @throws \Exception */ public function getWalletFinalBalance($walletName, $coinSymbol, $token) { $apiContext = $this->apiContextFactory->getApiContext($coinSymbol, $token); $addressClient = new AddressClient($apiContext); $balance = null; $address = null; try { $address = $addressClient->get($walletName); } catch (BlockCypherConnectionException $e) { if ($e->getCode() == self::ERROR_WALLET_NOT_FOUND) { // return null } else { throw $e; } } if ($address !== null) { $currencyAbbrev = BlockCypherCoinSymbolConstants::getCurrencyAbbrev($coinSymbol); $currency = new Currency($currencyAbbrev); $balance = BigMoney::fromInteger($address->getFinalBalance(), $currency); } return $balance; }