The Commands are implemented in the normal way as classes inside an interface class in the AgreementContract, each inheriting from CommandData. The list of Commands can be taken from the Path arrows on the Smart Contract view.


class AgreementContract : Contract {
    interface Commands : CommandData {
        class Propose : Commands
        class Repropose: Commands
        class Reject: Commands
        class Agree: Commands
        class Complete: Commands