我正在尝试实现这样一个场景,其中前几笔交易是使用state1完成的,而随后的时间点则尝试将所有交易批处理为新状态,例如state2,它可以容纳所有这些交易。一个状态可以容纳其他类型的多个状态吗?我们可以将批量状态作为输入和输出多个状态吗?
答案 0 :(得分:1)
从技术上讲,是的,一个状态可以包含其他状态。例如:
class StateContainingStates(
val states: List<StateAndRef<ContractState>>,
override val participants: List<Party>
) : ContractState
主要问题是,如果您将上述状态包含为交易的输入,则StateContainingStates.states
字段中保存的状态将不被消耗。
另一个问题是,StateContainingStates.states
字段中持有的州的合同将不会作为交易的一部分执行。