corda / net.corda.core.contracts / NamedByHash

NamedByHash

interface NamedByHash

Implemented by anything that can be named by a secure hash value (e.g. transactions, attachments).

Properties

id

abstract val id: SecureHash

Extension Functions

contextLogger

fun Any.contextLogger(): Logger

When called from a companion object, returns the logger for the enclosing class.

Inheritors

Attachment

interface Attachment : NamedByHash

An attachment is a ZIP (or an optionally signed JAR) that contains one or more files. Attachments are meant to contain public static data which can be referenced from transactions and utilised from contracts. Good examples of how attachments are meant to be used include:

BaseTransaction

abstract class BaseTransaction : NamedByHash

An abstract class defining fields shared by all transaction types in the system.

MaybeSerializedSignedTransaction

class MaybeSerializedSignedTransaction : NamedByHash

In the words of Matt working code is more important then pretty code. This class that contains code that may be serialized. If it were always serialized then the local disk fetch would need to serialize then de-serialize which wastes time. However over the wire we get batch fetch items serialized. This is because we need to get the exact length of the objects to pack them into the 10MB max message size buffer. We do not want to serialize them multiple times so it's a lot more efficient to send the byte stream.

SignaturesMissingException

class SignaturesMissingException : NamedByHash, SignatureException, CordaThrowable

TransactionWithSignatures

interface TransactionWithSignatures : NamedByHash

An interface for transactions containing signatures, with logic for signature verification.