API Corda явно не связывает государство и его контракт, что позволяет мне потенциально использовать разные контракты в разных транзакциях с одним и тем же классом состояния.
transactionBuilder1
.addOutputState(MyState(), MyStateContract::class.qualifiedName!!)
...
transactionBuilder2
.addOutputState(MyState(), SecondContract::class.qualifiedName!!)
В какой ситуации мне может понадобиться такая гибкость?Каковы недостатки при указании названия контракта вместе с государством?
// A hypothetical implementation of Corda API
@CordaSerializable
interface ContractState {
val participants: List<AbstractParty>
val contractClassName: String
}
....
transactionBuilder
.addOutputState(MyState())
A Отказ от ответственности:
Обратите внимание, что это вопрос WHY ,Я просто ищу вариант использования, который я могу пропустить.У меня все работает.Мне НЕ нужен обходной путь.