mirror of
https://github.com/bitcoin-s/bitcoin-s.git
synced 2025-02-25 07:17:32 +01:00
Merge branch 'master' into blockchain_package_and_base_traits
This commit is contained in:
commit
43bdbeb2e3
7 changed files with 22 additions and 21 deletions
|
@ -1,13 +1,14 @@
|
|||
package org.bitcoins.core.protocol.transaction
|
||||
package org.bitcoins.core.protocol
|
||||
|
||||
import org.bitcoins.core.util.BitcoinSUtil
|
||||
|
||||
|
||||
/**
|
||||
* Created by chris on 1/14/16.
|
||||
* Represents an element of a transction.
|
||||
* Examples would be inputs, outputs, scriptSigs, scriptPubKeys etc.
|
||||
* This represents a element that can be serialized to
|
||||
* be sent over the network
|
||||
*/
|
||||
trait TransactionElement {
|
||||
trait NetworkElement {
|
||||
|
||||
/**
|
||||
* The size of the TransactionElement in bytes.
|
|
@ -3,7 +3,6 @@ package org.bitcoins.core.protocol.script
|
|||
import org.bitcoins.core.crypto.{ECFactory, ECPublicKey}
|
||||
import org.bitcoins.core.serializers.script.{RawScriptPubKeyParser, ScriptParser}
|
||||
import org.bitcoins.core.protocol._
|
||||
import org.bitcoins.core.protocol.transaction.TransactionElement
|
||||
import org.bitcoins.core.script.bitwise.{OP_EQUAL, OP_EQUALVERIFY}
|
||||
import org.bitcoins.core.script.constant._
|
||||
import org.bitcoins.core.script.crypto.{OP_CHECKMULTISIG, OP_CHECKMULTISIGVERIFY, OP_CHECKSIG, OP_HASH160}
|
||||
|
@ -13,7 +12,7 @@ import org.bitcoins.core.util.{BitcoinSLogger, BitcoinScriptUtil, Factory}
|
|||
/**
|
||||
* Created by chris on 12/26/15.
|
||||
*/
|
||||
sealed trait ScriptPubKey extends TransactionElement with BitcoinSLogger {
|
||||
sealed trait ScriptPubKey extends NetworkElement with BitcoinSLogger {
|
||||
|
||||
/**
|
||||
* Representation of a scriptSignature in a parsed assembly format
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
package org.bitcoins.core.protocol.script
|
||||
|
||||
import org.bitcoins.core.crypto.{ECDigitalSignature, ECFactory, ECPublicKey, EmptyDigitalSignature}
|
||||
import org.bitcoins.core.protocol.transaction.TransactionElement
|
||||
import org.bitcoins.core.protocol.NetworkElement
|
||||
import org.bitcoins.core.serializers.script.{RawScriptPubKeyParser, RawScriptSignatureParser, ScriptParser}
|
||||
import org.bitcoins.core.script.constant._
|
||||
import org.bitcoins.core.script.crypto.{HashType, HashTypeFactory, OP_CHECKMULTISIG, SIGHASH_ALL}
|
||||
|
@ -14,7 +14,7 @@ import scala.util.{Failure, Success, Try}
|
|||
* Created by chris on 12/26/15.
|
||||
*
|
||||
*/
|
||||
sealed trait ScriptSignature extends TransactionElement with BitcoinSLogger {
|
||||
sealed trait ScriptSignature extends NetworkElement with BitcoinSLogger {
|
||||
|
||||
/**
|
||||
* Representation of a scriptSignature in a parsed assembly format
|
||||
|
|
|
@ -1,14 +1,15 @@
|
|||
package org.bitcoins.core.protocol.transaction
|
||||
|
||||
import org.bitcoins.core.protocol.NetworkElement
|
||||
import org.bitcoins.core.serializers.transaction.RawTransactionParser
|
||||
import org.bitcoins.core.util.{Factory, BitcoinSUtil, CryptoUtil}
|
||||
import org.bitcoins.core.util.{BitcoinSUtil, CryptoUtil, Factory}
|
||||
|
||||
/**
|
||||
* Created by chris on 7/14/15.
|
||||
*/
|
||||
|
||||
|
||||
sealed trait Transaction extends TransactionElement {
|
||||
sealed trait Transaction extends NetworkElement {
|
||||
/**
|
||||
* The sha256(sha256(tx)) of this transaction
|
||||
*
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
package org.bitcoins.core.protocol.transaction
|
||||
|
||||
import org.bitcoins.core.serializers.transaction.RawTransactionInputParser
|
||||
import org.bitcoins.core.protocol.CompactSizeUInt
|
||||
import org.bitcoins.core.protocol.{CompactSizeUInt, NetworkElement}
|
||||
import org.bitcoins.core.protocol.script.{ScriptPubKey, ScriptSignature}
|
||||
import org.bitcoins.core.script.constant.ScriptToken
|
||||
import org.bitcoins.core.util.{BitcoinSUtil, Factory}
|
||||
|
@ -10,7 +10,7 @@ import org.bitcoins.core.util.{BitcoinSUtil, Factory}
|
|||
* Created by chris on 12/26/15.
|
||||
* Algebraic data type that represents a transaction input
|
||||
*/
|
||||
sealed trait TransactionInput extends TransactionElement {
|
||||
sealed trait TransactionInput extends NetworkElement {
|
||||
|
||||
def previousOutput : TransactionOutPoint
|
||||
def scriptSignature : ScriptSignature
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
package org.bitcoins.core.protocol.transaction
|
||||
|
||||
import org.bitcoins.core.protocol.NetworkElement
|
||||
import org.bitcoins.core.serializers.transaction.RawTransactionOutPointParser
|
||||
import org.bitcoins.core.util.Factory
|
||||
|
||||
|
@ -7,7 +8,7 @@ import org.bitcoins.core.util.Factory
|
|||
* Created by chris on 12/26/15.
|
||||
*
|
||||
*/
|
||||
sealed trait TransactionOutPoint extends TransactionElement {
|
||||
sealed trait TransactionOutPoint extends NetworkElement {
|
||||
/**
|
||||
* The transaction id for the crediting transaction for this input
|
||||
*
|
||||
|
|
|
@ -1,17 +1,16 @@
|
|||
package org.bitcoins.core.protocol.transaction
|
||||
|
||||
import org.bitcoins.core.currency.{CurrencyUnits, CurrencyUnit, Satoshis}
|
||||
import org.bitcoins.core.currency.{CurrencyUnit, CurrencyUnits, Satoshis}
|
||||
import org.bitcoins.core.serializers.transaction.RawTransactionOutputParser
|
||||
import org.bitcoins.core.protocol.CompactSizeUInt
|
||||
|
||||
import org.bitcoins.core.protocol.script.{ScriptPubKey}
|
||||
import org.bitcoins.core.util.{Factory, BitcoinSUtil}
|
||||
import org.bitcoins.core.protocol.{CompactSizeUInt, NetworkElement}
|
||||
import org.bitcoins.core.protocol.script.ScriptPubKey
|
||||
import org.bitcoins.core.util.{BitcoinSUtil, Factory}
|
||||
|
||||
|
||||
/**
|
||||
* Created by chris on 12/26/15.
|
||||
*/
|
||||
sealed trait TransactionOutput extends TransactionElement {
|
||||
sealed trait TransactionOutput extends NetworkElement {
|
||||
|
||||
def value : CurrencyUnit
|
||||
def scriptPubKey : ScriptPubKey
|
||||
|
|
Loading…
Add table
Reference in a new issue