Package disc

Interface RepaymentContract

All Superinterfaces:
BlockchainContract

public interface RepaymentContract extends BlockchainContract
Смартконтракт обмена токенов на рубли. Создается в Party при наличии свободных токенов в достаточном количестве, см. Party.getBalance(), и подписывается ключом владельца. Для фактического обмена уполномоченное лицо должно удостоверить факт обмена, при помоши своего приватного ключа (устанавливается в настройках системы)
  • Method Details

    • getAmount

      @NonNull BigDecimal getAmount()
      Returns:
      обмениваемая сумма
    • getApprovedAt

      @Nullable ZonedDateTime getApprovedAt()
      Returns:
      момент подтверждения (и регистрации) контракта на обмен или null
    • approve

      void approve(@NonNull com.icodici.crypto.PrivateKey key) throws NetworkException, RegistrationException
      Подписывает и регистрирует на блокчейне операцию обмена. Если мето возвращает без исключений, это означает что:
      • подпись верна и операция зарегистрирована на блокчейне
      • Указанная сумма в токенах изъята из оборота
      Parameters:
      key - ключ сотрудника организации имеющей право заверять и выполнять обмен токенов на рубли
      Throws:
      RegistrationException - если контракт не принимается блокчейном
      NetworkException - если не удается зарегистировать контракт из за проблем со связью
    • getParty

      @NonNull Party getParty()
      Участник, который запросил и подписал контракт на вывод:
      Returns: