Eth apis.

This commit is contained in:
sc0Vu 2018-01-12 12:11:33 +08:00
parent cf5288774c
commit 1513023aab
45 changed files with 1337 additions and 123 deletions

View File

@ -49,130 +49,9 @@ class Eth
* @var array * @var array
*/ */
private $allowedMethods = [ private $allowedMethods = [
'eth_protocolVersion', 'eth_syncing', 'eth_coinbase', 'eth_mining', 'eth_hashrate', 'eth_gasPrice', 'eth_accounts', 'eth_blockNumber', 'eth_getBalance', 'eth_getStorageAt', 'eth_getTransactionCount', 'eth_getBlockTransactionCountByHash', 'eth_getBlockTransactionCountByNumber', 'eth_getUncleCountByBlockHash', 'eth_getUncleCountByBlockNumber', 'eth_getCode', 'eth_sign', 'eth_sendTransaction', 'eth_sendRawTransaction', 'eth_call', 'eth_estimateGas', 'eth_getBlockByHash', 'eth_getBlockByNumber', 'eth_getTransactionByHash', 'eth_getTransactionByBlockHashAndIndex', 'eth_getTransactionByBlockNumberAndIndex' 'eth_protocolVersion', 'eth_syncing', 'eth_coinbase', 'eth_mining', 'eth_hashrate', 'eth_gasPrice', 'eth_accounts', 'eth_blockNumber', 'eth_getBalance', 'eth_getStorageAt', 'eth_getTransactionCount', 'eth_getBlockTransactionCountByHash', 'eth_getBlockTransactionCountByNumber', 'eth_getUncleCountByBlockHash', 'eth_getUncleCountByBlockNumber', 'eth_getUncleByBlockHashAndIndex', 'eth_getUncleByBlockNumberAndIndex', 'eth_getCode', 'eth_sign', 'eth_sendTransaction', 'eth_sendRawTransaction', 'eth_call', 'eth_estimateGas', 'eth_getBlockByHash', 'eth_getBlockByNumber', 'eth_getTransactionByHash', 'eth_getTransactionByBlockHashAndIndex', 'eth_getTransactionByBlockNumberAndIndex', 'eth_getTransactionReceipt', 'eth_getCompilers', 'eth_compileSolidity', 'eth_compileLLL', 'eth_compileSerpent', 'eth_getWork', 'eth_newFilter', 'eth_newBlockFilter', 'eth_newPendingTransactionFilter', 'eth_uninstallFilter', 'eth_getFilterChanges', 'eth_getFilterLogs', 'eth_getLogs', 'eth_submitWork', 'eth_submitHashrate'
]; ];
/**
* methods
*
* @var array
*/
// private $methods = [
// 'eth_getTransactionReceipt' => [
// 'params' => [
// [
// 'validators' => BlockHashValidator::class
// ]
// ]
// ],
// 'eth_getUncleByBlockHashAndIndex' => [
// 'params' => [
// [
// 'validators' => BlockHashValidator::class
// ], [
// 'validators' => QuantityValidator::class
// ]
// ]
// ],
// 'eth_getUncleByBlockNumberAndIndex' => [
// 'params' => [
// [
// 'validators' => [
// QuantityValidator::class, TagValidator::class
// ]
// ], [
// 'validators' => QuantityValidator::class
// ]
// ]
// ],
// 'eth_getCompilers' => [],
// 'eth_compileSolidity' => [
// 'params' => [
// [
// 'validators' => StringValidator::class
// ]
// ]
// ],
// 'eth_compileLLL' => [
// 'params' => [
// [
// 'validators' => StringValidator::class
// ]
// ]
// ],
// 'eth_compileSerpent' => [
// 'params' => [
// [
// 'validators' => StringValidator::class
// ]
// ]
// ],
// 'eth_newFilter' => [
// 'params' => [
// [
// 'validators' => FilterValidator::class
// ]
// ]
// ],
// 'eth_newBlockFilter' => [
// 'params' => [
// [
// 'validators' => QuantityValidator::class
// ]
// ]
// ],
// 'eth_newPendingTransactionFilter' => [],
// 'eth_uninstallFilter' => [
// 'params' => [
// [
// 'validators' => QuantityValidator::class
// ]
// ]
// ],
// 'eth_getFilterChanges' => [
// 'params' => [
// [
// 'validators' => QuantityValidator::class
// ]
// ]
// ],
// 'eth_getFilterLogs' => [
// 'params' => [
// [
// 'validators' => QuantityValidator::class
// ]
// ]
// ],
// 'eth_getLogs' => [
// 'params' => [
// [
// 'validators' => FilterValidator::class
// ]
// ]
// ],
// 'eth_getWork' => [],
// 'eth_submitWork' => [
// 'params' => [
// [
// 'validators' => NonceValidator::class
// ], [
// 'validators' => BlockHashValidator::class
// ], [
// 'validators' => BlockHashValidator::class
// ]
// ]
// ],
// 'eth_submitHashrate' => [
// 'params' => [
// [
// 'validators' => BlockHashValidator::class
// ], [
// 'validators' => BlockHashValidator::class
// ]
// ]
// ],
// ];
/** /**
* construct * construct
* *

View File

@ -16,6 +16,13 @@ use Web3\Methods\EthMethod;
class Accounts extends EthMethod class Accounts extends EthMethod
{ {
/**
* validators
*
* @var array
*/
protected $validators = [];
/** /**
* inputFormatters * inputFormatters
* *

View File

@ -16,6 +16,13 @@ use Web3\Methods\EthMethod;
class BlockNumber extends EthMethod class BlockNumber extends EthMethod
{ {
/**
* validators
*
* @var array
*/
protected $validators = [];
/** /**
* inputFormatters * inputFormatters
* *

View File

@ -13,11 +13,25 @@ namespace Web3\Methods\Eth;
use InvalidArgumentException; use InvalidArgumentException;
use Web3\Methods\EthMethod; use Web3\Methods\EthMethod;
use Web3\Validators\TagValidator;
use Web3\Validators\QuantityValidator;
use Web3\Validators\CallValidator;
use Web3\Formatters\TransactionFormatter; use Web3\Formatters\TransactionFormatter;
use Web3\Formatters\OptionalQuantityFormatter; use Web3\Formatters\OptionalQuantityFormatter;
class Call extends EthMethod class Call extends EthMethod
{ {
/**
* validators
*
* @var array
*/
protected $validators = [
CallValidator::class, [
TagValidator::class, QuantityValidator::class
]
];
/** /**
* inputFormatters * inputFormatters
* *

View File

@ -16,6 +16,13 @@ use Web3\Methods\EthMethod;
class Coinbase extends EthMethod class Coinbase extends EthMethod
{ {
/**
* validators
*
* @var array
*/
protected $validators = [];
/** /**
* inputFormatters * inputFormatters
* *

View File

@ -0,0 +1,64 @@
<?php
/**
* This file is part of web3.php package.
*
* (c) Kuan-Cheng,Lai <alk03073135@gmail.com>
*
* @author Peter Lai <alk03073135@gmail.com>
* @license MIT
*/
namespace Web3\Methods\Eth;
use InvalidArgumentException;
use Web3\Methods\EthMethod;
use Web3\Validators\StringValidator;
use Web3\Formatters\StringFormatter;
class CompileLLL extends EthMethod
{
/**
* validators
*
* @var array
*/
protected $validators = [
StringValidator::class
];
/**
* inputFormatters
*
* @var array
*/
protected $inputFormatters = [
StringFormatter::class
];
/**
* outputFormatters
*
* @var array
*/
protected $outputFormatters = [];
/**
* defaultValues
*
* @var array
*/
protected $defaultValues = [];
/**
* construct
*
* @param string $method
* @param array $arguments
* @return void
*/
// public function __construct($method='', $arguments=[])
// {
// parent::__construct($method, $arguments);
// }
}

View File

@ -0,0 +1,64 @@
<?php
/**
* This file is part of web3.php package.
*
* (c) Kuan-Cheng,Lai <alk03073135@gmail.com>
*
* @author Peter Lai <alk03073135@gmail.com>
* @license MIT
*/
namespace Web3\Methods\Eth;
use InvalidArgumentException;
use Web3\Methods\EthMethod;
use Web3\Validators\StringValidator;
use Web3\Formatters\StringFormatter;
class CompileSerpent extends EthMethod
{
/**
* validators
*
* @var array
*/
protected $validators = [
StringValidator::class
];
/**
* inputFormatters
*
* @var array
*/
protected $inputFormatters = [
StringFormatter::class
];
/**
* outputFormatters
*
* @var array
*/
protected $outputFormatters = [];
/**
* defaultValues
*
* @var array
*/
protected $defaultValues = [];
/**
* construct
*
* @param string $method
* @param array $arguments
* @return void
*/
// public function __construct($method='', $arguments=[])
// {
// parent::__construct($method, $arguments);
// }
}

View File

@ -0,0 +1,64 @@
<?php
/**
* This file is part of web3.php package.
*
* (c) Kuan-Cheng,Lai <alk03073135@gmail.com>
*
* @author Peter Lai <alk03073135@gmail.com>
* @license MIT
*/
namespace Web3\Methods\Eth;
use InvalidArgumentException;
use Web3\Methods\EthMethod;
use Web3\Validators\StringValidator;
use Web3\Formatters\StringFormatter;
class CompileSolidity extends EthMethod
{
/**
* validators
*
* @var array
*/
protected $validators = [
StringValidator::class
];
/**
* inputFormatters
*
* @var array
*/
protected $inputFormatters = [
StringFormatter::class
];
/**
* outputFormatters
*
* @var array
*/
protected $outputFormatters = [];
/**
* defaultValues
*
* @var array
*/
protected $defaultValues = [];
/**
* construct
*
* @param string $method
* @param array $arguments
* @return void
*/
// public function __construct($method='', $arguments=[])
// {
// parent::__construct($method, $arguments);
// }
}

View File

@ -13,10 +13,20 @@ namespace Web3\Methods\Eth;
use InvalidArgumentException; use InvalidArgumentException;
use Web3\Methods\EthMethod; use Web3\Methods\EthMethod;
use Web3\Validators\TransactionValidator;
use Web3\Formatters\TransactionFormatter; use Web3\Formatters\TransactionFormatter;
class EstimateGas extends EthMethod class EstimateGas extends EthMethod
{ {
/**
* validators
*
* @var array
*/
protected $validators = [
TransactionValidator::class
];
/** /**
* inputFormatters * inputFormatters
* *

View File

@ -16,6 +16,13 @@ use Web3\Methods\EthMethod;
class GasPrice extends EthMethod class GasPrice extends EthMethod
{ {
/**
* validators
*
* @var array
*/
protected $validators = [];
/** /**
* inputFormatters * inputFormatters
* *

View File

@ -13,11 +13,25 @@ namespace Web3\Methods\Eth;
use InvalidArgumentException; use InvalidArgumentException;
use Web3\Methods\EthMethod; use Web3\Methods\EthMethod;
use Web3\Validators\TagValidator;
use Web3\Validators\QuantityValidator;
use Web3\Validators\AddressValidator;
use Web3\Formatters\AddressFormatter; use Web3\Formatters\AddressFormatter;
use Web3\Formatters\OptionalQuantityFormatter; use Web3\Formatters\OptionalQuantityFormatter;
class GetBalance extends EthMethod class GetBalance extends EthMethod
{ {
/**
* validators
*
* @var array
*/
protected $validators = [
AddressValidator::class, [
TagValidator::class, QuantityValidator::class
]
];
/** /**
* inputFormatters * inputFormatters
* *

View File

@ -13,11 +13,22 @@ namespace Web3\Methods\Eth;
use InvalidArgumentException; use InvalidArgumentException;
use Web3\Methods\EthMethod; use Web3\Methods\EthMethod;
use Web3\Validators\BlockHashValidator;
use Web3\Validators\BooleanValidator;
use Web3\Formatters\HexFormatter; use Web3\Formatters\HexFormatter;
use Web3\Formatters\BooleanFormatter; use Web3\Formatters\BooleanFormatter;
class GetBlockByHash extends EthMethod class GetBlockByHash extends EthMethod
{ {
/**
* validators
*
* @var array
*/
protected $validators = [
BlockHashValidator::class, BooleanValidator::class
];
/** /**
* inputFormatters * inputFormatters
* *

View File

@ -13,11 +13,22 @@ namespace Web3\Methods\Eth;
use InvalidArgumentException; use InvalidArgumentException;
use Web3\Methods\EthMethod; use Web3\Methods\EthMethod;
use Web3\Validators\QuantityValidator;
use Web3\Validators\BooleanValidator;
use Web3\Formatters\OptionalQuantityFormatter; use Web3\Formatters\OptionalQuantityFormatter;
use Web3\Formatters\BooleanFormatter; use Web3\Formatters\BooleanFormatter;
class GetBlockByNumber extends EthMethod class GetBlockByNumber extends EthMethod
{ {
/**
* validators
*
* @var array
*/
protected $validators = [
QuantityValidator::class, BooleanValidator::class
];
/** /**
* inputFormatters * inputFormatters
* *

View File

@ -13,10 +13,20 @@ namespace Web3\Methods\Eth;
use InvalidArgumentException; use InvalidArgumentException;
use Web3\Methods\EthMethod; use Web3\Methods\EthMethod;
use Web3\Validators\BlockHashValidator;
use Web3\Formatters\HexFormatter; use Web3\Formatters\HexFormatter;
class GetBlockTransactionCountByHash extends EthMethod class GetBlockTransactionCountByHash extends EthMethod
{ {
/**
* validators
*
* @var array
*/
protected $validators = [
BlockHashValidator::class
];
/** /**
* inputFormatters * inputFormatters
* *

View File

@ -13,10 +13,20 @@ namespace Web3\Methods\Eth;
use InvalidArgumentException; use InvalidArgumentException;
use Web3\Methods\EthMethod; use Web3\Methods\EthMethod;
use Web3\Validators\QuantityValidator;
use Web3\Formatters\OptionalQuantityFormatter; use Web3\Formatters\OptionalQuantityFormatter;
class GetBlockTransactionCountByNumber extends EthMethod class GetBlockTransactionCountByNumber extends EthMethod
{ {
/**
* validators
*
* @var array
*/
protected $validators = [
QuantityValidator::class
];
/** /**
* inputFormatters * inputFormatters
* *

View File

@ -13,11 +13,25 @@ namespace Web3\Methods\Eth;
use InvalidArgumentException; use InvalidArgumentException;
use Web3\Methods\EthMethod; use Web3\Methods\EthMethod;
use Web3\Validators\TagValidator;
use Web3\Validators\QuantityValidator;
use Web3\Validators\AddressValidator;
use Web3\Formatters\AddressFormatter; use Web3\Formatters\AddressFormatter;
use Web3\Formatters\OptionalQuantityFormatter; use Web3\Formatters\OptionalQuantityFormatter;
class GetCode extends EthMethod class GetCode extends EthMethod
{ {
/**
* validators
*
* @var array
*/
protected $validators = [
AddressValidator::class, [
TagValidator::class, QuantityValidator::class
]
];
/** /**
* inputFormatters * inputFormatters
* *

View File

@ -0,0 +1,58 @@
<?php
/**
* This file is part of web3.php package.
*
* (c) Kuan-Cheng,Lai <alk03073135@gmail.com>
*
* @author Peter Lai <alk03073135@gmail.com>
* @license MIT
*/
namespace Web3\Methods\Eth;
use InvalidArgumentException;
use Web3\Methods\EthMethod;
class GetCompilers extends EthMethod
{
/**
* validators
*
* @var array
*/
protected $validators = [];
/**
* inputFormatters
*
* @var array
*/
protected $inputFormatters = [];
/**
* outputFormatters
*
* @var array
*/
protected $outputFormatters = [];
/**
* defaultValues
*
* @var array
*/
protected $defaultValues = [];
/**
* construct
*
* @param string $method
* @param array $arguments
* @return void
*/
// public function __construct($method='', $arguments=[])
// {
// parent::__construct($method, $arguments);
// }
}

View File

@ -0,0 +1,64 @@
<?php
/**
* This file is part of web3.php package.
*
* (c) Kuan-Cheng,Lai <alk03073135@gmail.com>
*
* @author Peter Lai <alk03073135@gmail.com>
* @license MIT
*/
namespace Web3\Methods\Eth;
use InvalidArgumentException;
use Web3\Methods\EthMethod;
use Web3\Validators\QuantityValidator;
use Web3\Formatters\QuantityFormatter;
class GetFilterChanges extends EthMethod
{
/**
* validators
*
* @var array
*/
protected $validators = [
QuantityValidator::class
];
/**
* inputFormatters
*
* @var array
*/
protected $inputFormatters = [
QuantityFormatter::class
];
/**
* outputFormatters
*
* @var array
*/
protected $outputFormatters = [];
/**
* defaultValues
*
* @var array
*/
protected $defaultValues = [];
/**
* construct
*
* @param string $method
* @param array $arguments
* @return void
*/
// public function __construct($method='', $arguments=[])
// {
// parent::__construct($method, $arguments);
// }
}

View File

@ -0,0 +1,64 @@
<?php
/**
* This file is part of web3.php package.
*
* (c) Kuan-Cheng,Lai <alk03073135@gmail.com>
*
* @author Peter Lai <alk03073135@gmail.com>
* @license MIT
*/
namespace Web3\Methods\Eth;
use InvalidArgumentException;
use Web3\Methods\EthMethod;
use Web3\Validators\QuantityValidator;
use Web3\Formatters\QuantityFormatter;
class GetFilterLogs extends EthMethod
{
/**
* validators
*
* @var array
*/
protected $validators = [
QuantityValidator::class
];
/**
* inputFormatters
*
* @var array
*/
protected $inputFormatters = [
QuantityFormatter::class
];
/**
* outputFormatters
*
* @var array
*/
protected $outputFormatters = [];
/**
* defaultValues
*
* @var array
*/
protected $defaultValues = [];
/**
* construct
*
* @param string $method
* @param array $arguments
* @return void
*/
// public function __construct($method='', $arguments=[])
// {
// parent::__construct($method, $arguments);
// }
}

View File

@ -0,0 +1,61 @@
<?php
/**
* This file is part of web3.php package.
*
* (c) Kuan-Cheng,Lai <alk03073135@gmail.com>
*
* @author Peter Lai <alk03073135@gmail.com>
* @license MIT
*/
namespace Web3\Methods\Eth;
use InvalidArgumentException;
use Web3\Methods\EthMethod;
use Web3\Validators\FilterValidator;
class GetLogs extends EthMethod
{
/**
* validators
*
* @var array
*/
protected $validators = [
FilterValidator::class
];
/**
* inputFormatters
*
* @var array
*/
protected $inputFormatters = [];
/**
* outputFormatters
*
* @var array
*/
protected $outputFormatters = [];
/**
* defaultValues
*
* @var array
*/
protected $defaultValues = [];
/**
* construct
*
* @param string $method
* @param array $arguments
* @return void
*/
// public function __construct($method='', $arguments=[])
// {
// parent::__construct($method, $arguments);
// }
}

View File

@ -13,12 +13,26 @@ namespace Web3\Methods\Eth;
use InvalidArgumentException; use InvalidArgumentException;
use Web3\Methods\EthMethod; use Web3\Methods\EthMethod;
use Web3\Validators\TagValidator;
use Web3\Validators\QuantityValidator;
use Web3\Validators\AddressValidator;
use Web3\Formatters\AddressFormatter; use Web3\Formatters\AddressFormatter;
use Web3\Formatters\QuantityFormatter; use Web3\Formatters\QuantityFormatter;
use Web3\Formatters\OptionalQuantityFormatter; use Web3\Formatters\OptionalQuantityFormatter;
class GetStorageAt extends EthMethod class GetStorageAt extends EthMethod
{ {
/**
* validators
*
* @var array
*/
protected $validators = [
AddressValidator::class, QuantityValidator::class, [
TagValidator::class, QuantityValidator::class
]
];
/** /**
* inputFormatters * inputFormatters
* *

View File

@ -13,11 +13,22 @@ namespace Web3\Methods\Eth;
use InvalidArgumentException; use InvalidArgumentException;
use Web3\Methods\EthMethod; use Web3\Methods\EthMethod;
use Web3\Validators\BlockHashValidator;
use Web3\Validators\QuantityValidator;
use Web3\Formatters\HexFormatter; use Web3\Formatters\HexFormatter;
use Web3\Formatters\QuantityFormatter; use Web3\Formatters\QuantityFormatter;
class GetTransactionByBlockHashAndIndex extends EthMethod class GetTransactionByBlockHashAndIndex extends EthMethod
{ {
/**
* validators
*
* @var array
*/
protected $validators = [
BlockHashValidator::class, QuantityValidator::class
];
/** /**
* inputFormatters * inputFormatters
* *

View File

@ -13,11 +13,24 @@ namespace Web3\Methods\Eth;
use InvalidArgumentException; use InvalidArgumentException;
use Web3\Methods\EthMethod; use Web3\Methods\EthMethod;
use Web3\Validators\TagValidator;
use Web3\Validators\QuantityValidator;
use Web3\Formatters\OptionalQuantityFormatter; use Web3\Formatters\OptionalQuantityFormatter;
use Web3\Formatters\QuantityFormatter; use Web3\Formatters\QuantityFormatter;
class GetTransactionByBlockNumberAndIndex extends EthMethod class GetTransactionByBlockNumberAndIndex extends EthMethod
{ {
/**
* validators
*
* @var array
*/
protected $validators = [
[
TagValidator::class, QuantityValidator::class
], QuantityValidator::class
];
/** /**
* inputFormatters * inputFormatters
* *

View File

@ -13,10 +13,20 @@ namespace Web3\Methods\Eth;
use InvalidArgumentException; use InvalidArgumentException;
use Web3\Methods\EthMethod; use Web3\Methods\EthMethod;
use Web3\Validators\BlockHashValidator;
use Web3\Formatters\HexFormatter; use Web3\Formatters\HexFormatter;
class GetTransactionByHash extends EthMethod class GetTransactionByHash extends EthMethod
{ {
/**
* validators
*
* @var array
*/
protected $validators = [
BlockHashValidator::class
];
/** /**
* inputFormatters * inputFormatters
* *

View File

@ -13,11 +13,25 @@ namespace Web3\Methods\Eth;
use InvalidArgumentException; use InvalidArgumentException;
use Web3\Methods\EthMethod; use Web3\Methods\EthMethod;
use Web3\Validators\TagValidator;
use Web3\Validators\QuantityValidator;
use Web3\Validators\AddressValidator;
use Web3\Formatters\AddressFormatter; use Web3\Formatters\AddressFormatter;
use Web3\Formatters\OptionalQuantityFormatter; use Web3\Formatters\OptionalQuantityFormatter;
class GetTransactionCount extends EthMethod class GetTransactionCount extends EthMethod
{ {
/**
* validators
*
* @var array
*/
protected $validators = [
AddressValidator::class, [
TagValidator::class, QuantityValidator::class
]
];
/** /**
* inputFormatters * inputFormatters
* *

View File

@ -0,0 +1,64 @@
<?php
/**
* This file is part of web3.php package.
*
* (c) Kuan-Cheng,Lai <alk03073135@gmail.com>
*
* @author Peter Lai <alk03073135@gmail.com>
* @license MIT
*/
namespace Web3\Methods\Eth;
use InvalidArgumentException;
use Web3\Methods\EthMethod;
use Web3\Validators\BlockHashValidator;
use Web3\Formatters\HexFormatter;
class GetTransactionReceipt extends EthMethod
{
/**
* validators
*
* @var array
*/
protected $validators = [
BlockHashValidator::class
];
/**
* inputFormatters
*
* @var array
*/
protected $inputFormatters = [
HexFormatter::class
];
/**
* outputFormatters
*
* @var array
*/
protected $outputFormatters = [];
/**
* defaultValues
*
* @var array
*/
protected $defaultValues = [];
/**
* construct
*
* @param string $method
* @param array $arguments
* @return void
*/
// public function __construct($method='', $arguments=[])
// {
// parent::__construct($method, $arguments);
// }
}

View File

@ -0,0 +1,66 @@
<?php
/**
* This file is part of web3.php package.
*
* (c) Kuan-Cheng,Lai <alk03073135@gmail.com>
*
* @author Peter Lai <alk03073135@gmail.com>
* @license MIT
*/
namespace Web3\Methods\Eth;
use InvalidArgumentException;
use Web3\Methods\EthMethod;
use Web3\Validators\BlockHashValidator;
use Web3\Validators\QuantityValidator;
use Web3\Formatters\HexFormatter;
use Web3\Formatters\QuantityFormatter;
class GetUncleByBlockHashAndIndex extends EthMethod
{
/**
* validators
*
* @var array
*/
protected $validators = [
BlockHashValidator::class, QuantityValidator::class
];
/**
* inputFormatters
*
* @var array
*/
protected $inputFormatters = [
HexFormatter::class, QuantityFormatter::class
];
/**
* outputFormatters
*
* @var array
*/
protected $outputFormatters = [];
/**
* defaultValues
*
* @var array
*/
protected $defaultValues = [];
/**
* construct
*
* @param string $method
* @param array $arguments
* @return void
*/
// public function __construct($method='', $arguments=[])
// {
// parent::__construct($method, $arguments);
// }
}

View File

@ -0,0 +1,68 @@
<?php
/**
* This file is part of web3.php package.
*
* (c) Kuan-Cheng,Lai <alk03073135@gmail.com>
*
* @author Peter Lai <alk03073135@gmail.com>
* @license MIT
*/
namespace Web3\Methods\Eth;
use InvalidArgumentException;
use Web3\Methods\EthMethod;
use Web3\Validators\TagValidator;
use Web3\Validators\QuantityValidator;
use Web3\Formatters\OptionalQuantityFormatter;
use Web3\Formatters\QuantityFormatter;
class GetUncleByBlockNumberAndIndex extends EthMethod
{
/**
* validators
*
* @var array
*/
protected $validators = [
[
TagValidator::class, QuantityValidator::class
], QuantityValidator::class
];
/**
* inputFormatters
*
* @var array
*/
protected $inputFormatters = [
OptionalQuantityFormatter::class, QuantityFormatter::class
];
/**
* outputFormatters
*
* @var array
*/
protected $outputFormatters = [];
/**
* defaultValues
*
* @var array
*/
protected $defaultValues = [];
/**
* construct
*
* @param string $method
* @param array $arguments
* @return void
*/
// public function __construct($method='', $arguments=[])
// {
// parent::__construct($method, $arguments);
// }
}

View File

@ -13,10 +13,20 @@ namespace Web3\Methods\Eth;
use InvalidArgumentException; use InvalidArgumentException;
use Web3\Methods\EthMethod; use Web3\Methods\EthMethod;
use Web3\Validators\BlockHashValidator;
use Web3\Formatters\HexFormatter; use Web3\Formatters\HexFormatter;
class GetUncleCountByBlockHash extends EthMethod class GetUncleCountByBlockHash extends EthMethod
{ {
/**
* validators
*
* @var array
*/
protected $validators = [
BlockHashValidator::class
];
/** /**
* inputFormatters * inputFormatters
* *

View File

@ -13,10 +13,23 @@ namespace Web3\Methods\Eth;
use InvalidArgumentException; use InvalidArgumentException;
use Web3\Methods\EthMethod; use Web3\Methods\EthMethod;
use Web3\Validators\TagValidator;
use Web3\Validators\QuantityValidator;
use Web3\Formatters\OptionalQuantityFormatter; use Web3\Formatters\OptionalQuantityFormatter;
class GetUncleCountByBlockNumber extends EthMethod class GetUncleCountByBlockNumber extends EthMethod
{ {
/**
* validators
*
* @var array
*/
protected $validators = [
[
TagValidator::class, QuantityValidator::class
]
];
/** /**
* inputFormatters * inputFormatters
* *

View File

@ -0,0 +1,58 @@
<?php
/**
* This file is part of web3.php package.
*
* (c) Kuan-Cheng,Lai <alk03073135@gmail.com>
*
* @author Peter Lai <alk03073135@gmail.com>
* @license MIT
*/
namespace Web3\Methods\Eth;
use InvalidArgumentException;
use Web3\Methods\EthMethod;
class GetWork extends EthMethod
{
/**
* validators
*
* @var array
*/
protected $validators = [];
/**
* inputFormatters
*
* @var array
*/
protected $inputFormatters = [];
/**
* outputFormatters
*
* @var array
*/
protected $outputFormatters = [];
/**
* defaultValues
*
* @var array
*/
protected $defaultValues = [];
/**
* construct
*
* @param string $method
* @param array $arguments
* @return void
*/
// public function __construct($method='', $arguments=[])
// {
// parent::__construct($method, $arguments);
// }
}

View File

@ -16,6 +16,13 @@ use Web3\Methods\EthMethod;
class Hashrate extends EthMethod class Hashrate extends EthMethod
{ {
/**
* validators
*
* @var array
*/
protected $validators = [];
/** /**
* inputFormatters * inputFormatters
* *

View File

@ -16,6 +16,13 @@ use Web3\Methods\EthMethod;
class Mining extends EthMethod class Mining extends EthMethod
{ {
/**
* validators
*
* @var array
*/
protected $validators = [];
/** /**
* inputFormatters * inputFormatters
* *

View File

@ -0,0 +1,64 @@
<?php
/**
* This file is part of web3.php package.
*
* (c) Kuan-Cheng,Lai <alk03073135@gmail.com>
*
* @author Peter Lai <alk03073135@gmail.com>
* @license MIT
*/
namespace Web3\Methods\Eth;
use InvalidArgumentException;
use Web3\Methods\EthMethod;
use Web3\Validators\QuantityValidator;
use Web3\Formatters\QuantityFormatter;
class NewBlockFilter extends EthMethod
{
/**
* validators
*
* @var array
*/
protected $validators = [
QuantityValidator::class
];
/**
* inputFormatters
*
* @var array
*/
protected $inputFormatters = [
QuantityFormatter::class
];
/**
* outputFormatters
*
* @var array
*/
protected $outputFormatters = [];
/**
* defaultValues
*
* @var array
*/
protected $defaultValues = [];
/**
* construct
*
* @param string $method
* @param array $arguments
* @return void
*/
// public function __construct($method='', $arguments=[])
// {
// parent::__construct($method, $arguments);
// }
}

View File

@ -0,0 +1,61 @@
<?php
/**
* This file is part of web3.php package.
*
* (c) Kuan-Cheng,Lai <alk03073135@gmail.com>
*
* @author Peter Lai <alk03073135@gmail.com>
* @license MIT
*/
namespace Web3\Methods\Eth;
use InvalidArgumentException;
use Web3\Methods\EthMethod;
use Web3\Validators\FilterValidator;
class NewFilter extends EthMethod
{
/**
* validators
*
* @var array
*/
protected $validators = [
FilterValidator::class
];
/**
* inputFormatters
*
* @var array
*/
protected $inputFormatters = [];
/**
* outputFormatters
*
* @var array
*/
protected $outputFormatters = [];
/**
* defaultValues
*
* @var array
*/
protected $defaultValues = [];
/**
* construct
*
* @param string $method
* @param array $arguments
* @return void
*/
// public function __construct($method='', $arguments=[])
// {
// parent::__construct($method, $arguments);
// }
}

View File

@ -0,0 +1,58 @@
<?php
/**
* This file is part of web3.php package.
*
* (c) Kuan-Cheng,Lai <alk03073135@gmail.com>
*
* @author Peter Lai <alk03073135@gmail.com>
* @license MIT
*/
namespace Web3\Methods\Eth;
use InvalidArgumentException;
use Web3\Methods\EthMethod;
class NewPendingTransactionFilter extends EthMethod
{
/**
* validators
*
* @var array
*/
protected $validators = [];
/**
* inputFormatters
*
* @var array
*/
protected $inputFormatters = [];
/**
* outputFormatters
*
* @var array
*/
protected $outputFormatters = [];
/**
* defaultValues
*
* @var array
*/
protected $defaultValues = [];
/**
* construct
*
* @param string $method
* @param array $arguments
* @return void
*/
// public function __construct($method='', $arguments=[])
// {
// parent::__construct($method, $arguments);
// }
}

View File

@ -17,6 +17,13 @@ use Web3\Formatters\BigNumberFormatter;
class ProtocolVersion extends EthMethod class ProtocolVersion extends EthMethod
{ {
/**
* validators
*
* @var array
*/
protected $validators = [];
/** /**
* inputFormatters * inputFormatters
* *

View File

@ -13,10 +13,20 @@ namespace Web3\Methods\Eth;
use InvalidArgumentException; use InvalidArgumentException;
use Web3\Methods\EthMethod; use Web3\Methods\EthMethod;
use Web3\Validators\HexValidator;
use Web3\Formatters\HexFormatter; use Web3\Formatters\HexFormatter;
class SendRawTransaction extends EthMethod class SendRawTransaction extends EthMethod
{ {
/**
* validators
*
* @var array
*/
protected $validators = [
HexValidator::class
];
/** /**
* inputFormatters * inputFormatters
* *

View File

@ -13,10 +13,20 @@ namespace Web3\Methods\Eth;
use InvalidArgumentException; use InvalidArgumentException;
use Web3\Methods\EthMethod; use Web3\Methods\EthMethod;
use Web3\Validators\TransactionValidator;
use Web3\Formatters\TransactionFormatter; use Web3\Formatters\TransactionFormatter;
class SendTransaction extends EthMethod class SendTransaction extends EthMethod
{ {
/**
* validators
*
* @var array
*/
protected $validators = [
TransactionValidator::class
];
/** /**
* inputFormatters * inputFormatters
* *

View File

@ -13,11 +13,22 @@ namespace Web3\Methods\Eth;
use InvalidArgumentException; use InvalidArgumentException;
use Web3\Methods\EthMethod; use Web3\Methods\EthMethod;
use Web3\Validators\AddressValidator;
use Web3\Validators\HexValidator;
use Web3\Formatters\AddressFormatter; use Web3\Formatters\AddressFormatter;
use Web3\Formatters\HexFormatter; use Web3\Formatters\HexFormatter;
class Sign extends EthMethod class Sign extends EthMethod
{ {
/**
* validators
*
* @var array
*/
protected $validators = [
AddressValidator::class, HexValidator::class
];
/** /**
* inputFormatters * inputFormatters
* *

View File

@ -0,0 +1,61 @@
<?php
/**
* This file is part of web3.php package.
*
* (c) Kuan-Cheng,Lai <alk03073135@gmail.com>
*
* @author Peter Lai <alk03073135@gmail.com>
* @license MIT
*/
namespace Web3\Methods\Eth;
use InvalidArgumentException;
use Web3\Methods\EthMethod;
use Web3\Validators\BlockHashValidator;
class SubmitHashrate extends EthMethod
{
/**
* validators
*
* @var array
*/
protected $validators = [
BlockHashValidator::class, BlockHashValidator::class
];
/**
* inputFormatters
*
* @var array
*/
protected $inputFormatters = [];
/**
* outputFormatters
*
* @var array
*/
protected $outputFormatters = [];
/**
* defaultValues
*
* @var array
*/
protected $defaultValues = [];
/**
* construct
*
* @param string $method
* @param array $arguments
* @return void
*/
// public function __construct($method='', $arguments=[])
// {
// parent::__construct($method, $arguments);
// }
}

View File

@ -0,0 +1,65 @@
<?php
/**
* This file is part of web3.php package.
*
* (c) Kuan-Cheng,Lai <alk03073135@gmail.com>
*
* @author Peter Lai <alk03073135@gmail.com>
* @license MIT
*/
namespace Web3\Methods\Eth;
use InvalidArgumentException;
use Web3\Methods\EthMethod;
use Web3\Validators\NonceValidator;
use Web3\Validators\BlockHashValidator;
use Web3\Formatters\QuantityFormatter;
class SubmitWork extends EthMethod
{
/**
* validators
*
* @var array
*/
protected $validators = [
NonceValidator::class, BlockHashValidator::class, BlockHashValidator::class
];
/**
* inputFormatters
*
* @var array
*/
protected $inputFormatters = [
QuantityFormatter::class
];
/**
* outputFormatters
*
* @var array
*/
protected $outputFormatters = [];
/**
* defaultValues
*
* @var array
*/
protected $defaultValues = [];
/**
* construct
*
* @param string $method
* @param array $arguments
* @return void
*/
// public function __construct($method='', $arguments=[])
// {
// parent::__construct($method, $arguments);
// }
}

View File

@ -16,6 +16,13 @@ use Web3\Methods\EthMethod;
class Syncing extends EthMethod class Syncing extends EthMethod
{ {
/**
* validators
*
* @var array
*/
protected $validators = [];
/** /**
* inputFormatters * inputFormatters
* *

View File

@ -0,0 +1,64 @@
<?php
/**
* This file is part of web3.php package.
*
* (c) Kuan-Cheng,Lai <alk03073135@gmail.com>
*
* @author Peter Lai <alk03073135@gmail.com>
* @license MIT
*/
namespace Web3\Methods\Eth;
use InvalidArgumentException;
use Web3\Methods\EthMethod;
use Web3\Validators\QuantityValidator;
use Web3\Formatters\QuantityFormatter;
class UninstallFilter extends EthMethod
{
/**
* validators
*
* @var array
*/
protected $validators = [
QuantityValidator::class
];
/**
* inputFormatters
*
* @var array
*/
protected $inputFormatters = [
QuantityFormatter::class
];
/**
* outputFormatters
*
* @var array
*/
protected $outputFormatters = [];
/**
* defaultValues
*
* @var array
*/
protected $defaultValues = [];
/**
* construct
*
* @param string $method
* @param array $arguments
* @return void
*/
// public function __construct($method='', $arguments=[])
// {
// parent::__construct($method, $arguments);
// }
}

View File

@ -4,6 +4,7 @@ namespace Test\Unit;
use RuntimeException; use RuntimeException;
use Test\TestCase; use Test\TestCase;
use phpseclib\Math\BigInteger as BigNumber;
class EthApiTest extends TestCase class EthApiTest extends TestCase
{ {
@ -39,7 +40,7 @@ class EthApiTest extends TestCase
if ($err !== null) { if ($err !== null) {
return $this->fail($err->getMessage()); return $this->fail($err->getMessage());
} }
$this->assertTrue(is_string($version)); $this->assertTrue($version instanceof BigNumber);
}); });
} }