net.corda.core.contracts.clauses

## Class CompositeClause<S extends ContractState,C extends CommandData,K>

- Clause
- - net.corda.core.contracts.clauses.CompositeClause<S,C,K>

- Direct Known Subclasses:
    AllOf, AnyOf, FirstComposition, FirstOf

      public class CompositeClause<S extends ContractState,C extends CommandData,K>
      extends Clause

  Abstract supertype for clauses which compose other clauses together in some logical manner.

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from class net.corda.core.contracts.clauses.Clause

      `Clause.Companion`

  - ### Field Summary

    - ### Fields inherited from class net.corda.core.contracts.clauses.Clause

      `Companion`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `CompositeClause()` Abstract supertype for clauses which compose other clauses together in some logical manner.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `java.util.List<net.corda.core.contracts.clauses.Clause>` | `getClauses()` List of clauses under this composite clause
    `java.util.List<net.corda.core.contracts.clauses.Clause>` | `getExecutionPath(java.util.List<? extends net.corda.core.contracts.AuthenticatedObject<? extends C>> commands)` Determine the subclauses which will be verified as a result of verifying this clause.
    `java.util.List<net.corda.core.contracts.clauses.Clause>` | `matchedClauses(java.util.List<? extends net.corda.core.contracts.AuthenticatedObject<? extends C>> commands)` Determine which clauses are matched by the supplied commands.

    - ### Methods inherited from class net.corda.core.contracts.clauses.Clause

      `getExecutionPath, getRequiredCommands, verify`

- - ### Constructor Detail

    - #### CompositeClause

          public CompositeClause()

      Abstract supertype for clauses which compose other clauses together in some logical manner.

  - ### Method Detail

    - #### getClauses

          public java.util.List<net.corda.core.contracts.clauses.Clause> getClauses()

      List of clauses under this composite clause

    - #### getExecutionPath

          public java.util.List<net.corda.core.contracts.clauses.Clause> getExecutionPath(java.util.List<? extends net.corda.core.contracts.AuthenticatedObject<? extends C>> commands)

      Determine the subclauses which will be verified as a result of verifying this clause.

      Throws:
        - if the given commands do not result in a valid execution (for example no match with `class FirstOf`).

    - #### matchedClauses

          public java.util.List<net.corda.core.contracts.clauses.Clause> matchedClauses(java.util.List<? extends net.corda.core.contracts.AuthenticatedObject<? extends C>> commands)

      Determine which clauses are matched by the supplied commands.

      Throws:
        - if the given commands do not result in a valid execution (for example no match with `class FirstOf`).