Class LoanProductDataV1

java.lang.Object
org.apache.avro.specific.SpecificRecordBase
org.apache.fineract.avro.loan.v1.LoanProductDataV1
All Implemented Interfaces:
Externalizable, Serializable, Comparable<org.apache.avro.specific.SpecificRecord>, org.apache.avro.generic.GenericContainer, org.apache.avro.generic.GenericRecord, org.apache.avro.generic.IndexedRecord, org.apache.avro.specific.SpecificRecord, ByteBufferSerializable

public class LoanProductDataV1 extends org.apache.avro.specific.SpecificRecordBase implements org.apache.avro.specific.SpecificRecord, ByteBufferSerializable
See Also:
  • Field Details

    • SCHEMA$

      public static final org.apache.avro.Schema SCHEMA$
  • Constructor Details

    • LoanProductDataV1

      public LoanProductDataV1()
      Default constructor. Note that this does not initialize fields to their default values from the schema. If that is desired then one should use newBuilder().
    • LoanProductDataV1

      public LoanProductDataV1(Long id, String name, String shortName, String description, Long fundId, String fundName, Boolean includeInBorrowerCycle, Boolean useBorrowerCycle, String startDate, String closeDate, String status, String externalId, CurrencyDataV1 currency, BigDecimal principal, BigDecimal minPrincipal, BigDecimal maxPrincipal, Integer numberOfRepayments, Integer minNumberOfRepayments, Integer maxNumberOfRepayments, Integer repaymentEvery, EnumOptionDataV1 repaymentFrequencyType, BigDecimal interestRatePerPeriod, BigDecimal minInterestRatePerPeriod, BigDecimal maxInterestRatePerPeriod, EnumOptionDataV1 interestRateFrequencyType, BigDecimal annualInterestRate, Boolean isLinkedToFloatingInterestRates, Long floatingRateId, String floatingRateName, BigDecimal interestRateDifferential, BigDecimal minDifferentialLendingRate, BigDecimal defaultDifferentialLendingRate, BigDecimal maxDifferentialLendingRate, Boolean isFloatingInterestRateCalculationAllowed, Boolean allowVariableInstallments, Integer minimumGap, Integer maximumGap, EnumOptionDataV1 amortizationType, EnumOptionDataV1 interestType, EnumOptionDataV1 interestCalculationPeriodType, Boolean allowPartialPeriodInterestCalculation, BigDecimal inArrearsTolerance, String transactionProcessingStrategyCode, String transactionProcessingStrategyName, Integer graceOnPrincipalPayment, Integer recurringMoratoriumOnPrincipalPeriods, Integer graceOnInterestPayment, Integer graceOnInterestCharged, Integer graceOnArrearsAgeing, Integer overdueDaysForNPA, EnumOptionDataV1 daysInMonthType, EnumOptionDataV1 daysInYearType, StringEnumOptionDataV1 daysInYearCustomStrategy, Boolean isInterestRecalculationEnabled, LoanProductInterestRecalculationDataV1 interestRecalculationData, Integer minimumDaysBetweenDisbursalAndFirstRepayment, Boolean canDefineInstallmentAmount, Integer installmentAmountInMultiplesOf, List<ChargeDataV1> charges, List<LoanProductBorrowerCycleVariationDataV1> principalVariationsForBorrowerCycle, List<LoanProductBorrowerCycleVariationDataV1> interestRateVariationsForBorrowerCycle, List<LoanProductBorrowerCycleVariationDataV1> numberOfRepaymentVariationsForBorrowerCycle, Boolean isRatesEnabled, List<RateDataV1> rates, Boolean multiDisburseLoan, Integer maxTrancheCount, BigDecimal outstandingLoanBalance, Boolean disallowExpectedDisbursements, Boolean allowApprovedDisbursedAmountsOverApplied, String overAppliedCalculationType, Integer overAppliedNumber, BigDecimal principalThresholdForLastInstallment, Boolean holdGuaranteeFunds, LoanProductGuaranteeDataV1 productGuaranteeData, Boolean accountMovesOutOfNPAOnlyOnArrearsCompletion, Boolean syncExpectedWithDisbursementDate, Boolean isEqualAmortization, BigDecimal fixedPrincipalPercentagePerInstallment, DelinquencyBucketDataV1 delinquencyBucket, Boolean interestRecognitionOnDisbursementDate, Map<String,ByteBuffer> customData)
      All-args constructor.
      Parameters:
      id - The new value for id
      name - The new value for name
      shortName - The new value for shortName
      description - The new value for description
      fundId - The new value for fundId
      fundName - The new value for fundName
      includeInBorrowerCycle - The new value for includeInBorrowerCycle
      useBorrowerCycle - The new value for useBorrowerCycle
      startDate - The new value for startDate
      closeDate - The new value for closeDate
      status - The new value for status
      externalId - The new value for externalId
      currency - The new value for currency
      principal - The new value for principal
      minPrincipal - The new value for minPrincipal
      maxPrincipal - The new value for maxPrincipal
      numberOfRepayments - The new value for numberOfRepayments
      minNumberOfRepayments - The new value for minNumberOfRepayments
      maxNumberOfRepayments - The new value for maxNumberOfRepayments
      repaymentEvery - The new value for repaymentEvery
      repaymentFrequencyType - The new value for repaymentFrequencyType
      interestRatePerPeriod - The new value for interestRatePerPeriod
      minInterestRatePerPeriod - The new value for minInterestRatePerPeriod
      maxInterestRatePerPeriod - The new value for maxInterestRatePerPeriod
      interestRateFrequencyType - The new value for interestRateFrequencyType
      annualInterestRate - The new value for annualInterestRate
      isLinkedToFloatingInterestRates - The new value for isLinkedToFloatingInterestRates
      floatingRateId - The new value for floatingRateId
      floatingRateName - The new value for floatingRateName
      interestRateDifferential - The new value for interestRateDifferential
      minDifferentialLendingRate - The new value for minDifferentialLendingRate
      defaultDifferentialLendingRate - The new value for defaultDifferentialLendingRate
      maxDifferentialLendingRate - The new value for maxDifferentialLendingRate
      isFloatingInterestRateCalculationAllowed - The new value for isFloatingInterestRateCalculationAllowed
      allowVariableInstallments - The new value for allowVariableInstallments
      minimumGap - The new value for minimumGap
      maximumGap - The new value for maximumGap
      amortizationType - The new value for amortizationType
      interestType - The new value for interestType
      interestCalculationPeriodType - The new value for interestCalculationPeriodType
      allowPartialPeriodInterestCalculation - The new value for allowPartialPeriodInterestCalculation
      inArrearsTolerance - The new value for inArrearsTolerance
      transactionProcessingStrategyCode - The new value for transactionProcessingStrategyCode
      transactionProcessingStrategyName - The new value for transactionProcessingStrategyName
      graceOnPrincipalPayment - The new value for graceOnPrincipalPayment
      recurringMoratoriumOnPrincipalPeriods - The new value for recurringMoratoriumOnPrincipalPeriods
      graceOnInterestPayment - The new value for graceOnInterestPayment
      graceOnInterestCharged - The new value for graceOnInterestCharged
      graceOnArrearsAgeing - The new value for graceOnArrearsAgeing
      overdueDaysForNPA - The new value for overdueDaysForNPA
      daysInMonthType - The new value for daysInMonthType
      daysInYearType - The new value for daysInYearType
      daysInYearCustomStrategy - The new value for daysInYearCustomStrategy
      isInterestRecalculationEnabled - The new value for isInterestRecalculationEnabled
      interestRecalculationData - The new value for interestRecalculationData
      minimumDaysBetweenDisbursalAndFirstRepayment - The new value for minimumDaysBetweenDisbursalAndFirstRepayment
      canDefineInstallmentAmount - The new value for canDefineInstallmentAmount
      installmentAmountInMultiplesOf - The new value for installmentAmountInMultiplesOf
      charges - The new value for charges
      principalVariationsForBorrowerCycle - The new value for principalVariationsForBorrowerCycle
      interestRateVariationsForBorrowerCycle - The new value for interestRateVariationsForBorrowerCycle
      numberOfRepaymentVariationsForBorrowerCycle - The new value for numberOfRepaymentVariationsForBorrowerCycle
      isRatesEnabled - The new value for isRatesEnabled
      rates - The new value for rates
      multiDisburseLoan - The new value for multiDisburseLoan
      maxTrancheCount - The new value for maxTrancheCount
      outstandingLoanBalance - The new value for outstandingLoanBalance
      disallowExpectedDisbursements - The new value for disallowExpectedDisbursements
      allowApprovedDisbursedAmountsOverApplied - The new value for allowApprovedDisbursedAmountsOverApplied
      overAppliedCalculationType - The new value for overAppliedCalculationType
      overAppliedNumber - The new value for overAppliedNumber
      principalThresholdForLastInstallment - The new value for principalThresholdForLastInstallment
      holdGuaranteeFunds - The new value for holdGuaranteeFunds
      productGuaranteeData - The new value for productGuaranteeData
      accountMovesOutOfNPAOnlyOnArrearsCompletion - The new value for accountMovesOutOfNPAOnlyOnArrearsCompletion
      syncExpectedWithDisbursementDate - The new value for syncExpectedWithDisbursementDate
      isEqualAmortization - The new value for isEqualAmortization
      fixedPrincipalPercentagePerInstallment - The new value for fixedPrincipalPercentagePerInstallment
      delinquencyBucket - The new value for delinquencyBucket
      interestRecognitionOnDisbursementDate - The new value for interestRecognitionOnDisbursementDate
      customData - The new value for customData
  • Method Details

    • getClassSchema

      public static org.apache.avro.Schema getClassSchema()
    • getEncoder

      public static org.apache.avro.message.BinaryMessageEncoder<LoanProductDataV1> getEncoder()
      Return the BinaryMessageEncoder instance used by this class.
      Returns:
      the message encoder used by this class
    • getDecoder

      public static org.apache.avro.message.BinaryMessageDecoder<LoanProductDataV1> getDecoder()
      Return the BinaryMessageDecoder instance used by this class.
      Returns:
      the message decoder used by this class
    • createDecoder

      public static org.apache.avro.message.BinaryMessageDecoder<LoanProductDataV1> createDecoder(org.apache.avro.message.SchemaStore resolver)
      Create a new BinaryMessageDecoder instance for this class that uses the specified SchemaStore.
      Parameters:
      resolver - a SchemaStore used to find schemas by fingerprint
      Returns:
      a BinaryMessageDecoder instance for this class backed by the given SchemaStore
    • toByteBuffer

      public ByteBuffer toByteBuffer() throws IOException
      Serializes this LoanProductDataV1 to a ByteBuffer.
      Specified by:
      toByteBuffer in interface ByteBufferSerializable
      Returns:
      a buffer holding the serialized data for this instance
      Throws:
      IOException - if this instance could not be serialized
    • fromByteBuffer

      public static LoanProductDataV1 fromByteBuffer(ByteBuffer b) throws IOException
      Deserializes a LoanProductDataV1 from a ByteBuffer.
      Parameters:
      b - a byte buffer holding serialized data for an instance of this class
      Returns:
      a LoanProductDataV1 instance decoded from the given buffer
      Throws:
      IOException - if the given bytes could not be deserialized into an instance of this class
    • getSpecificData

      public org.apache.avro.specific.SpecificData getSpecificData()
      Overrides:
      getSpecificData in class org.apache.avro.specific.SpecificRecordBase
    • getSchema

      public org.apache.avro.Schema getSchema()
      Specified by:
      getSchema in interface org.apache.avro.generic.GenericContainer
    • get

      public Object get(int field$)
      Specified by:
      get in interface org.apache.avro.generic.IndexedRecord
    • put

      public void put(int field$, Object value$)
      Specified by:
      put in interface org.apache.avro.generic.IndexedRecord
    • getId

      public Long getId()
      Gets the value of the 'id' field.
      Returns:
      The value of the 'id' field.
    • setId

      public void setId(Long value)
      Sets the value of the 'id' field.
      Parameters:
      value - the value to set.
    • getName

      public String getName()
      Gets the value of the 'name' field.
      Returns:
      The value of the 'name' field.
    • setName

      public void setName(String value)
      Sets the value of the 'name' field.
      Parameters:
      value - the value to set.
    • getShortName

      public String getShortName()
      Gets the value of the 'shortName' field.
      Returns:
      The value of the 'shortName' field.
    • setShortName

      public void setShortName(String value)
      Sets the value of the 'shortName' field.
      Parameters:
      value - the value to set.
    • getDescription

      public String getDescription()
      Gets the value of the 'description' field.
      Returns:
      The value of the 'description' field.
    • setDescription

      public void setDescription(String value)
      Sets the value of the 'description' field.
      Parameters:
      value - the value to set.
    • getFundId

      public Long getFundId()
      Gets the value of the 'fundId' field.
      Returns:
      The value of the 'fundId' field.
    • setFundId

      public void setFundId(Long value)
      Sets the value of the 'fundId' field.
      Parameters:
      value - the value to set.
    • getFundName

      public String getFundName()
      Gets the value of the 'fundName' field.
      Returns:
      The value of the 'fundName' field.
    • setFundName

      public void setFundName(String value)
      Sets the value of the 'fundName' field.
      Parameters:
      value - the value to set.
    • getIncludeInBorrowerCycle

      public Boolean getIncludeInBorrowerCycle()
      Gets the value of the 'includeInBorrowerCycle' field.
      Returns:
      The value of the 'includeInBorrowerCycle' field.
    • setIncludeInBorrowerCycle

      public void setIncludeInBorrowerCycle(Boolean value)
      Sets the value of the 'includeInBorrowerCycle' field.
      Parameters:
      value - the value to set.
    • getUseBorrowerCycle

      public Boolean getUseBorrowerCycle()
      Gets the value of the 'useBorrowerCycle' field.
      Returns:
      The value of the 'useBorrowerCycle' field.
    • setUseBorrowerCycle

      public void setUseBorrowerCycle(Boolean value)
      Sets the value of the 'useBorrowerCycle' field.
      Parameters:
      value - the value to set.
    • getStartDate

      public String getStartDate()
      Gets the value of the 'startDate' field.
      Returns:
      The value of the 'startDate' field.
    • setStartDate

      public void setStartDate(String value)
      Sets the value of the 'startDate' field.
      Parameters:
      value - the value to set.
    • getCloseDate

      public String getCloseDate()
      Gets the value of the 'closeDate' field.
      Returns:
      The value of the 'closeDate' field.
    • setCloseDate

      public void setCloseDate(String value)
      Sets the value of the 'closeDate' field.
      Parameters:
      value - the value to set.
    • getStatus

      public String getStatus()
      Gets the value of the 'status' field.
      Returns:
      The value of the 'status' field.
    • setStatus

      public void setStatus(String value)
      Sets the value of the 'status' field.
      Parameters:
      value - the value to set.
    • getExternalId

      public String getExternalId()
      Gets the value of the 'externalId' field.
      Returns:
      The value of the 'externalId' field.
    • setExternalId

      public void setExternalId(String value)
      Sets the value of the 'externalId' field.
      Parameters:
      value - the value to set.
    • getCurrency

      public CurrencyDataV1 getCurrency()
      Gets the value of the 'currency' field.
      Returns:
      The value of the 'currency' field.
    • setCurrency

      public void setCurrency(CurrencyDataV1 value)
      Sets the value of the 'currency' field.
      Parameters:
      value - the value to set.
    • getPrincipal

      public BigDecimal getPrincipal()
      Gets the value of the 'principal' field.
      Returns:
      The value of the 'principal' field.
    • setPrincipal

      public void setPrincipal(BigDecimal value)
      Sets the value of the 'principal' field.
      Parameters:
      value - the value to set.
    • getMinPrincipal

      public BigDecimal getMinPrincipal()
      Gets the value of the 'minPrincipal' field.
      Returns:
      The value of the 'minPrincipal' field.
    • setMinPrincipal

      public void setMinPrincipal(BigDecimal value)
      Sets the value of the 'minPrincipal' field.
      Parameters:
      value - the value to set.
    • getMaxPrincipal

      public BigDecimal getMaxPrincipal()
      Gets the value of the 'maxPrincipal' field.
      Returns:
      The value of the 'maxPrincipal' field.
    • setMaxPrincipal

      public void setMaxPrincipal(BigDecimal value)
      Sets the value of the 'maxPrincipal' field.
      Parameters:
      value - the value to set.
    • getNumberOfRepayments

      public Integer getNumberOfRepayments()
      Gets the value of the 'numberOfRepayments' field.
      Returns:
      The value of the 'numberOfRepayments' field.
    • setNumberOfRepayments

      public void setNumberOfRepayments(Integer value)
      Sets the value of the 'numberOfRepayments' field.
      Parameters:
      value - the value to set.
    • getMinNumberOfRepayments

      public Integer getMinNumberOfRepayments()
      Gets the value of the 'minNumberOfRepayments' field.
      Returns:
      The value of the 'minNumberOfRepayments' field.
    • setMinNumberOfRepayments

      public void setMinNumberOfRepayments(Integer value)
      Sets the value of the 'minNumberOfRepayments' field.
      Parameters:
      value - the value to set.
    • getMaxNumberOfRepayments

      public Integer getMaxNumberOfRepayments()
      Gets the value of the 'maxNumberOfRepayments' field.
      Returns:
      The value of the 'maxNumberOfRepayments' field.
    • setMaxNumberOfRepayments

      public void setMaxNumberOfRepayments(Integer value)
      Sets the value of the 'maxNumberOfRepayments' field.
      Parameters:
      value - the value to set.
    • getRepaymentEvery

      public Integer getRepaymentEvery()
      Gets the value of the 'repaymentEvery' field.
      Returns:
      The value of the 'repaymentEvery' field.
    • setRepaymentEvery

      public void setRepaymentEvery(Integer value)
      Sets the value of the 'repaymentEvery' field.
      Parameters:
      value - the value to set.
    • getRepaymentFrequencyType

      public EnumOptionDataV1 getRepaymentFrequencyType()
      Gets the value of the 'repaymentFrequencyType' field.
      Returns:
      The value of the 'repaymentFrequencyType' field.
    • setRepaymentFrequencyType

      public void setRepaymentFrequencyType(EnumOptionDataV1 value)
      Sets the value of the 'repaymentFrequencyType' field.
      Parameters:
      value - the value to set.
    • getInterestRatePerPeriod

      public BigDecimal getInterestRatePerPeriod()
      Gets the value of the 'interestRatePerPeriod' field.
      Returns:
      The value of the 'interestRatePerPeriod' field.
    • setInterestRatePerPeriod

      public void setInterestRatePerPeriod(BigDecimal value)
      Sets the value of the 'interestRatePerPeriod' field.
      Parameters:
      value - the value to set.
    • getMinInterestRatePerPeriod

      public BigDecimal getMinInterestRatePerPeriod()
      Gets the value of the 'minInterestRatePerPeriod' field.
      Returns:
      The value of the 'minInterestRatePerPeriod' field.
    • setMinInterestRatePerPeriod

      public void setMinInterestRatePerPeriod(BigDecimal value)
      Sets the value of the 'minInterestRatePerPeriod' field.
      Parameters:
      value - the value to set.
    • getMaxInterestRatePerPeriod

      public BigDecimal getMaxInterestRatePerPeriod()
      Gets the value of the 'maxInterestRatePerPeriod' field.
      Returns:
      The value of the 'maxInterestRatePerPeriod' field.
    • setMaxInterestRatePerPeriod

      public void setMaxInterestRatePerPeriod(BigDecimal value)
      Sets the value of the 'maxInterestRatePerPeriod' field.
      Parameters:
      value - the value to set.
    • getInterestRateFrequencyType

      public EnumOptionDataV1 getInterestRateFrequencyType()
      Gets the value of the 'interestRateFrequencyType' field.
      Returns:
      The value of the 'interestRateFrequencyType' field.
    • setInterestRateFrequencyType

      public void setInterestRateFrequencyType(EnumOptionDataV1 value)
      Sets the value of the 'interestRateFrequencyType' field.
      Parameters:
      value - the value to set.
    • getAnnualInterestRate

      public BigDecimal getAnnualInterestRate()
      Gets the value of the 'annualInterestRate' field.
      Returns:
      The value of the 'annualInterestRate' field.
    • setAnnualInterestRate

      public void setAnnualInterestRate(BigDecimal value)
      Sets the value of the 'annualInterestRate' field.
      Parameters:
      value - the value to set.
    • getIsLinkedToFloatingInterestRates

      public Boolean getIsLinkedToFloatingInterestRates()
      Gets the value of the 'isLinkedToFloatingInterestRates' field.
      Returns:
      The value of the 'isLinkedToFloatingInterestRates' field.
    • setIsLinkedToFloatingInterestRates

      public void setIsLinkedToFloatingInterestRates(Boolean value)
      Sets the value of the 'isLinkedToFloatingInterestRates' field.
      Parameters:
      value - the value to set.
    • getFloatingRateId

      public Long getFloatingRateId()
      Gets the value of the 'floatingRateId' field.
      Returns:
      The value of the 'floatingRateId' field.
    • setFloatingRateId

      public void setFloatingRateId(Long value)
      Sets the value of the 'floatingRateId' field.
      Parameters:
      value - the value to set.
    • getFloatingRateName

      public String getFloatingRateName()
      Gets the value of the 'floatingRateName' field.
      Returns:
      The value of the 'floatingRateName' field.
    • setFloatingRateName

      public void setFloatingRateName(String value)
      Sets the value of the 'floatingRateName' field.
      Parameters:
      value - the value to set.
    • getInterestRateDifferential

      public BigDecimal getInterestRateDifferential()
      Gets the value of the 'interestRateDifferential' field.
      Returns:
      The value of the 'interestRateDifferential' field.
    • setInterestRateDifferential

      public void setInterestRateDifferential(BigDecimal value)
      Sets the value of the 'interestRateDifferential' field.
      Parameters:
      value - the value to set.
    • getMinDifferentialLendingRate

      public BigDecimal getMinDifferentialLendingRate()
      Gets the value of the 'minDifferentialLendingRate' field.
      Returns:
      The value of the 'minDifferentialLendingRate' field.
    • setMinDifferentialLendingRate

      public void setMinDifferentialLendingRate(BigDecimal value)
      Sets the value of the 'minDifferentialLendingRate' field.
      Parameters:
      value - the value to set.
    • getDefaultDifferentialLendingRate

      public BigDecimal getDefaultDifferentialLendingRate()
      Gets the value of the 'defaultDifferentialLendingRate' field.
      Returns:
      The value of the 'defaultDifferentialLendingRate' field.
    • setDefaultDifferentialLendingRate

      public void setDefaultDifferentialLendingRate(BigDecimal value)
      Sets the value of the 'defaultDifferentialLendingRate' field.
      Parameters:
      value - the value to set.
    • getMaxDifferentialLendingRate

      public BigDecimal getMaxDifferentialLendingRate()
      Gets the value of the 'maxDifferentialLendingRate' field.
      Returns:
      The value of the 'maxDifferentialLendingRate' field.
    • setMaxDifferentialLendingRate

      public void setMaxDifferentialLendingRate(BigDecimal value)
      Sets the value of the 'maxDifferentialLendingRate' field.
      Parameters:
      value - the value to set.
    • getIsFloatingInterestRateCalculationAllowed

      public Boolean getIsFloatingInterestRateCalculationAllowed()
      Gets the value of the 'isFloatingInterestRateCalculationAllowed' field.
      Returns:
      The value of the 'isFloatingInterestRateCalculationAllowed' field.
    • setIsFloatingInterestRateCalculationAllowed

      public void setIsFloatingInterestRateCalculationAllowed(Boolean value)
      Sets the value of the 'isFloatingInterestRateCalculationAllowed' field.
      Parameters:
      value - the value to set.
    • getAllowVariableInstallments

      public Boolean getAllowVariableInstallments()
      Gets the value of the 'allowVariableInstallments' field.
      Returns:
      The value of the 'allowVariableInstallments' field.
    • setAllowVariableInstallments

      public void setAllowVariableInstallments(Boolean value)
      Sets the value of the 'allowVariableInstallments' field.
      Parameters:
      value - the value to set.
    • getMinimumGap

      public Integer getMinimumGap()
      Gets the value of the 'minimumGap' field.
      Returns:
      The value of the 'minimumGap' field.
    • setMinimumGap

      public void setMinimumGap(Integer value)
      Sets the value of the 'minimumGap' field.
      Parameters:
      value - the value to set.
    • getMaximumGap

      public Integer getMaximumGap()
      Gets the value of the 'maximumGap' field.
      Returns:
      The value of the 'maximumGap' field.
    • setMaximumGap

      public void setMaximumGap(Integer value)
      Sets the value of the 'maximumGap' field.
      Parameters:
      value - the value to set.
    • getAmortizationType

      public EnumOptionDataV1 getAmortizationType()
      Gets the value of the 'amortizationType' field.
      Returns:
      The value of the 'amortizationType' field.
    • setAmortizationType

      public void setAmortizationType(EnumOptionDataV1 value)
      Sets the value of the 'amortizationType' field.
      Parameters:
      value - the value to set.
    • getInterestType

      public EnumOptionDataV1 getInterestType()
      Gets the value of the 'interestType' field.
      Returns:
      The value of the 'interestType' field.
    • setInterestType

      public void setInterestType(EnumOptionDataV1 value)
      Sets the value of the 'interestType' field.
      Parameters:
      value - the value to set.
    • getInterestCalculationPeriodType

      public EnumOptionDataV1 getInterestCalculationPeriodType()
      Gets the value of the 'interestCalculationPeriodType' field.
      Returns:
      The value of the 'interestCalculationPeriodType' field.
    • setInterestCalculationPeriodType

      public void setInterestCalculationPeriodType(EnumOptionDataV1 value)
      Sets the value of the 'interestCalculationPeriodType' field.
      Parameters:
      value - the value to set.
    • getAllowPartialPeriodInterestCalculation

      public Boolean getAllowPartialPeriodInterestCalculation()
      Gets the value of the 'allowPartialPeriodInterestCalculation' field.
      Returns:
      The value of the 'allowPartialPeriodInterestCalculation' field.
    • setAllowPartialPeriodInterestCalculation

      public void setAllowPartialPeriodInterestCalculation(Boolean value)
      Sets the value of the 'allowPartialPeriodInterestCalculation' field.
      Parameters:
      value - the value to set.
    • getInArrearsTolerance

      public BigDecimal getInArrearsTolerance()
      Gets the value of the 'inArrearsTolerance' field.
      Returns:
      The value of the 'inArrearsTolerance' field.
    • setInArrearsTolerance

      public void setInArrearsTolerance(BigDecimal value)
      Sets the value of the 'inArrearsTolerance' field.
      Parameters:
      value - the value to set.
    • getTransactionProcessingStrategyCode

      public String getTransactionProcessingStrategyCode()
      Gets the value of the 'transactionProcessingStrategyCode' field.
      Returns:
      The value of the 'transactionProcessingStrategyCode' field.
    • setTransactionProcessingStrategyCode

      public void setTransactionProcessingStrategyCode(String value)
      Sets the value of the 'transactionProcessingStrategyCode' field.
      Parameters:
      value - the value to set.
    • getTransactionProcessingStrategyName

      public String getTransactionProcessingStrategyName()
      Gets the value of the 'transactionProcessingStrategyName' field.
      Returns:
      The value of the 'transactionProcessingStrategyName' field.
    • setTransactionProcessingStrategyName

      public void setTransactionProcessingStrategyName(String value)
      Sets the value of the 'transactionProcessingStrategyName' field.
      Parameters:
      value - the value to set.
    • getGraceOnPrincipalPayment

      public Integer getGraceOnPrincipalPayment()
      Gets the value of the 'graceOnPrincipalPayment' field.
      Returns:
      The value of the 'graceOnPrincipalPayment' field.
    • setGraceOnPrincipalPayment

      public void setGraceOnPrincipalPayment(Integer value)
      Sets the value of the 'graceOnPrincipalPayment' field.
      Parameters:
      value - the value to set.
    • getRecurringMoratoriumOnPrincipalPeriods

      public Integer getRecurringMoratoriumOnPrincipalPeriods()
      Gets the value of the 'recurringMoratoriumOnPrincipalPeriods' field.
      Returns:
      The value of the 'recurringMoratoriumOnPrincipalPeriods' field.
    • setRecurringMoratoriumOnPrincipalPeriods

      public void setRecurringMoratoriumOnPrincipalPeriods(Integer value)
      Sets the value of the 'recurringMoratoriumOnPrincipalPeriods' field.
      Parameters:
      value - the value to set.
    • getGraceOnInterestPayment

      public Integer getGraceOnInterestPayment()
      Gets the value of the 'graceOnInterestPayment' field.
      Returns:
      The value of the 'graceOnInterestPayment' field.
    • setGraceOnInterestPayment

      public void setGraceOnInterestPayment(Integer value)
      Sets the value of the 'graceOnInterestPayment' field.
      Parameters:
      value - the value to set.
    • getGraceOnInterestCharged

      public Integer getGraceOnInterestCharged()
      Gets the value of the 'graceOnInterestCharged' field.
      Returns:
      The value of the 'graceOnInterestCharged' field.
    • setGraceOnInterestCharged

      public void setGraceOnInterestCharged(Integer value)
      Sets the value of the 'graceOnInterestCharged' field.
      Parameters:
      value - the value to set.
    • getGraceOnArrearsAgeing

      public Integer getGraceOnArrearsAgeing()
      Gets the value of the 'graceOnArrearsAgeing' field.
      Returns:
      The value of the 'graceOnArrearsAgeing' field.
    • setGraceOnArrearsAgeing

      public void setGraceOnArrearsAgeing(Integer value)
      Sets the value of the 'graceOnArrearsAgeing' field.
      Parameters:
      value - the value to set.
    • getOverdueDaysForNPA

      public Integer getOverdueDaysForNPA()
      Gets the value of the 'overdueDaysForNPA' field.
      Returns:
      The value of the 'overdueDaysForNPA' field.
    • setOverdueDaysForNPA

      public void setOverdueDaysForNPA(Integer value)
      Sets the value of the 'overdueDaysForNPA' field.
      Parameters:
      value - the value to set.
    • getDaysInMonthType

      public EnumOptionDataV1 getDaysInMonthType()
      Gets the value of the 'daysInMonthType' field.
      Returns:
      The value of the 'daysInMonthType' field.
    • setDaysInMonthType

      public void setDaysInMonthType(EnumOptionDataV1 value)
      Sets the value of the 'daysInMonthType' field.
      Parameters:
      value - the value to set.
    • getDaysInYearType

      public EnumOptionDataV1 getDaysInYearType()
      Gets the value of the 'daysInYearType' field.
      Returns:
      The value of the 'daysInYearType' field.
    • setDaysInYearType

      public void setDaysInYearType(EnumOptionDataV1 value)
      Sets the value of the 'daysInYearType' field.
      Parameters:
      value - the value to set.
    • getDaysInYearCustomStrategy

      public StringEnumOptionDataV1 getDaysInYearCustomStrategy()
      Gets the value of the 'daysInYearCustomStrategy' field.
      Returns:
      The value of the 'daysInYearCustomStrategy' field.
    • setDaysInYearCustomStrategy

      public void setDaysInYearCustomStrategy(StringEnumOptionDataV1 value)
      Sets the value of the 'daysInYearCustomStrategy' field.
      Parameters:
      value - the value to set.
    • getIsInterestRecalculationEnabled

      public Boolean getIsInterestRecalculationEnabled()
      Gets the value of the 'isInterestRecalculationEnabled' field.
      Returns:
      The value of the 'isInterestRecalculationEnabled' field.
    • setIsInterestRecalculationEnabled

      public void setIsInterestRecalculationEnabled(Boolean value)
      Sets the value of the 'isInterestRecalculationEnabled' field.
      Parameters:
      value - the value to set.
    • getInterestRecalculationData

      public LoanProductInterestRecalculationDataV1 getInterestRecalculationData()
      Gets the value of the 'interestRecalculationData' field.
      Returns:
      The value of the 'interestRecalculationData' field.
    • setInterestRecalculationData

      public void setInterestRecalculationData(LoanProductInterestRecalculationDataV1 value)
      Sets the value of the 'interestRecalculationData' field.
      Parameters:
      value - the value to set.
    • getMinimumDaysBetweenDisbursalAndFirstRepayment

      public Integer getMinimumDaysBetweenDisbursalAndFirstRepayment()
      Gets the value of the 'minimumDaysBetweenDisbursalAndFirstRepayment' field.
      Returns:
      The value of the 'minimumDaysBetweenDisbursalAndFirstRepayment' field.
    • setMinimumDaysBetweenDisbursalAndFirstRepayment

      public void setMinimumDaysBetweenDisbursalAndFirstRepayment(Integer value)
      Sets the value of the 'minimumDaysBetweenDisbursalAndFirstRepayment' field.
      Parameters:
      value - the value to set.
    • getCanDefineInstallmentAmount

      public Boolean getCanDefineInstallmentAmount()
      Gets the value of the 'canDefineInstallmentAmount' field.
      Returns:
      The value of the 'canDefineInstallmentAmount' field.
    • setCanDefineInstallmentAmount

      public void setCanDefineInstallmentAmount(Boolean value)
      Sets the value of the 'canDefineInstallmentAmount' field.
      Parameters:
      value - the value to set.
    • getInstallmentAmountInMultiplesOf

      public Integer getInstallmentAmountInMultiplesOf()
      Gets the value of the 'installmentAmountInMultiplesOf' field.
      Returns:
      The value of the 'installmentAmountInMultiplesOf' field.
    • setInstallmentAmountInMultiplesOf

      public void setInstallmentAmountInMultiplesOf(Integer value)
      Sets the value of the 'installmentAmountInMultiplesOf' field.
      Parameters:
      value - the value to set.
    • getCharges

      public List<ChargeDataV1> getCharges()
      Gets the value of the 'charges' field.
      Returns:
      The value of the 'charges' field.
    • setCharges

      public void setCharges(List<ChargeDataV1> value)
      Sets the value of the 'charges' field.
      Parameters:
      value - the value to set.
    • getPrincipalVariationsForBorrowerCycle

      public List<LoanProductBorrowerCycleVariationDataV1> getPrincipalVariationsForBorrowerCycle()
      Gets the value of the 'principalVariationsForBorrowerCycle' field.
      Returns:
      The value of the 'principalVariationsForBorrowerCycle' field.
    • setPrincipalVariationsForBorrowerCycle

      public void setPrincipalVariationsForBorrowerCycle(List<LoanProductBorrowerCycleVariationDataV1> value)
      Sets the value of the 'principalVariationsForBorrowerCycle' field.
      Parameters:
      value - the value to set.
    • getInterestRateVariationsForBorrowerCycle

      public List<LoanProductBorrowerCycleVariationDataV1> getInterestRateVariationsForBorrowerCycle()
      Gets the value of the 'interestRateVariationsForBorrowerCycle' field.
      Returns:
      The value of the 'interestRateVariationsForBorrowerCycle' field.
    • setInterestRateVariationsForBorrowerCycle

      public void setInterestRateVariationsForBorrowerCycle(List<LoanProductBorrowerCycleVariationDataV1> value)
      Sets the value of the 'interestRateVariationsForBorrowerCycle' field.
      Parameters:
      value - the value to set.
    • getNumberOfRepaymentVariationsForBorrowerCycle

      public List<LoanProductBorrowerCycleVariationDataV1> getNumberOfRepaymentVariationsForBorrowerCycle()
      Gets the value of the 'numberOfRepaymentVariationsForBorrowerCycle' field.
      Returns:
      The value of the 'numberOfRepaymentVariationsForBorrowerCycle' field.
    • setNumberOfRepaymentVariationsForBorrowerCycle

      public void setNumberOfRepaymentVariationsForBorrowerCycle(List<LoanProductBorrowerCycleVariationDataV1> value)
      Sets the value of the 'numberOfRepaymentVariationsForBorrowerCycle' field.
      Parameters:
      value - the value to set.
    • getIsRatesEnabled

      public Boolean getIsRatesEnabled()
      Gets the value of the 'isRatesEnabled' field.
      Returns:
      The value of the 'isRatesEnabled' field.
    • setIsRatesEnabled

      public void setIsRatesEnabled(Boolean value)
      Sets the value of the 'isRatesEnabled' field.
      Parameters:
      value - the value to set.
    • getRates

      public List<RateDataV1> getRates()
      Gets the value of the 'rates' field.
      Returns:
      The value of the 'rates' field.
    • setRates

      public void setRates(List<RateDataV1> value)
      Sets the value of the 'rates' field.
      Parameters:
      value - the value to set.
    • getMultiDisburseLoan

      public Boolean getMultiDisburseLoan()
      Gets the value of the 'multiDisburseLoan' field.
      Returns:
      The value of the 'multiDisburseLoan' field.
    • setMultiDisburseLoan

      public void setMultiDisburseLoan(Boolean value)
      Sets the value of the 'multiDisburseLoan' field.
      Parameters:
      value - the value to set.
    • getMaxTrancheCount

      public Integer getMaxTrancheCount()
      Gets the value of the 'maxTrancheCount' field.
      Returns:
      The value of the 'maxTrancheCount' field.
    • setMaxTrancheCount

      public void setMaxTrancheCount(Integer value)
      Sets the value of the 'maxTrancheCount' field.
      Parameters:
      value - the value to set.
    • getOutstandingLoanBalance

      public BigDecimal getOutstandingLoanBalance()
      Gets the value of the 'outstandingLoanBalance' field.
      Returns:
      The value of the 'outstandingLoanBalance' field.
    • setOutstandingLoanBalance

      public void setOutstandingLoanBalance(BigDecimal value)
      Sets the value of the 'outstandingLoanBalance' field.
      Parameters:
      value - the value to set.
    • getDisallowExpectedDisbursements

      public Boolean getDisallowExpectedDisbursements()
      Gets the value of the 'disallowExpectedDisbursements' field.
      Returns:
      The value of the 'disallowExpectedDisbursements' field.
    • setDisallowExpectedDisbursements

      public void setDisallowExpectedDisbursements(Boolean value)
      Sets the value of the 'disallowExpectedDisbursements' field.
      Parameters:
      value - the value to set.
    • getAllowApprovedDisbursedAmountsOverApplied

      public Boolean getAllowApprovedDisbursedAmountsOverApplied()
      Gets the value of the 'allowApprovedDisbursedAmountsOverApplied' field.
      Returns:
      The value of the 'allowApprovedDisbursedAmountsOverApplied' field.
    • setAllowApprovedDisbursedAmountsOverApplied

      public void setAllowApprovedDisbursedAmountsOverApplied(Boolean value)
      Sets the value of the 'allowApprovedDisbursedAmountsOverApplied' field.
      Parameters:
      value - the value to set.
    • getOverAppliedCalculationType

      public String getOverAppliedCalculationType()
      Gets the value of the 'overAppliedCalculationType' field.
      Returns:
      The value of the 'overAppliedCalculationType' field.
    • setOverAppliedCalculationType

      public void setOverAppliedCalculationType(String value)
      Sets the value of the 'overAppliedCalculationType' field.
      Parameters:
      value - the value to set.
    • getOverAppliedNumber

      public Integer getOverAppliedNumber()
      Gets the value of the 'overAppliedNumber' field.
      Returns:
      The value of the 'overAppliedNumber' field.
    • setOverAppliedNumber

      public void setOverAppliedNumber(Integer value)
      Sets the value of the 'overAppliedNumber' field.
      Parameters:
      value - the value to set.
    • getPrincipalThresholdForLastInstallment

      public BigDecimal getPrincipalThresholdForLastInstallment()
      Gets the value of the 'principalThresholdForLastInstallment' field.
      Returns:
      The value of the 'principalThresholdForLastInstallment' field.
    • setPrincipalThresholdForLastInstallment

      public void setPrincipalThresholdForLastInstallment(BigDecimal value)
      Sets the value of the 'principalThresholdForLastInstallment' field.
      Parameters:
      value - the value to set.
    • getHoldGuaranteeFunds

      public Boolean getHoldGuaranteeFunds()
      Gets the value of the 'holdGuaranteeFunds' field.
      Returns:
      The value of the 'holdGuaranteeFunds' field.
    • setHoldGuaranteeFunds

      public void setHoldGuaranteeFunds(Boolean value)
      Sets the value of the 'holdGuaranteeFunds' field.
      Parameters:
      value - the value to set.
    • getProductGuaranteeData

      public LoanProductGuaranteeDataV1 getProductGuaranteeData()
      Gets the value of the 'productGuaranteeData' field.
      Returns:
      The value of the 'productGuaranteeData' field.
    • setProductGuaranteeData

      public void setProductGuaranteeData(LoanProductGuaranteeDataV1 value)
      Sets the value of the 'productGuaranteeData' field.
      Parameters:
      value - the value to set.
    • getAccountMovesOutOfNPAOnlyOnArrearsCompletion

      public Boolean getAccountMovesOutOfNPAOnlyOnArrearsCompletion()
      Gets the value of the 'accountMovesOutOfNPAOnlyOnArrearsCompletion' field.
      Returns:
      The value of the 'accountMovesOutOfNPAOnlyOnArrearsCompletion' field.
    • setAccountMovesOutOfNPAOnlyOnArrearsCompletion

      public void setAccountMovesOutOfNPAOnlyOnArrearsCompletion(Boolean value)
      Sets the value of the 'accountMovesOutOfNPAOnlyOnArrearsCompletion' field.
      Parameters:
      value - the value to set.
    • getSyncExpectedWithDisbursementDate

      public Boolean getSyncExpectedWithDisbursementDate()
      Gets the value of the 'syncExpectedWithDisbursementDate' field.
      Returns:
      The value of the 'syncExpectedWithDisbursementDate' field.
    • setSyncExpectedWithDisbursementDate

      public void setSyncExpectedWithDisbursementDate(Boolean value)
      Sets the value of the 'syncExpectedWithDisbursementDate' field.
      Parameters:
      value - the value to set.
    • getIsEqualAmortization

      public Boolean getIsEqualAmortization()
      Gets the value of the 'isEqualAmortization' field.
      Returns:
      The value of the 'isEqualAmortization' field.
    • setIsEqualAmortization

      public void setIsEqualAmortization(Boolean value)
      Sets the value of the 'isEqualAmortization' field.
      Parameters:
      value - the value to set.
    • getFixedPrincipalPercentagePerInstallment

      public BigDecimal getFixedPrincipalPercentagePerInstallment()
      Gets the value of the 'fixedPrincipalPercentagePerInstallment' field.
      Returns:
      The value of the 'fixedPrincipalPercentagePerInstallment' field.
    • setFixedPrincipalPercentagePerInstallment

      public void setFixedPrincipalPercentagePerInstallment(BigDecimal value)
      Sets the value of the 'fixedPrincipalPercentagePerInstallment' field.
      Parameters:
      value - the value to set.
    • getDelinquencyBucket

      public DelinquencyBucketDataV1 getDelinquencyBucket()
      Gets the value of the 'delinquencyBucket' field.
      Returns:
      The value of the 'delinquencyBucket' field.
    • setDelinquencyBucket

      public void setDelinquencyBucket(DelinquencyBucketDataV1 value)
      Sets the value of the 'delinquencyBucket' field.
      Parameters:
      value - the value to set.
    • getInterestRecognitionOnDisbursementDate

      public Boolean getInterestRecognitionOnDisbursementDate()
      Gets the value of the 'interestRecognitionOnDisbursementDate' field.
      Returns:
      The value of the 'interestRecognitionOnDisbursementDate' field.
    • setInterestRecognitionOnDisbursementDate

      public void setInterestRecognitionOnDisbursementDate(Boolean value)
      Sets the value of the 'interestRecognitionOnDisbursementDate' field.
      Parameters:
      value - the value to set.
    • getCustomData

      public Map<String,ByteBuffer> getCustomData()
      Gets the value of the 'customData' field.
      Returns:
      The value of the 'customData' field.
    • setCustomData

      public void setCustomData(Map<String,ByteBuffer> value)
      Sets the value of the 'customData' field.
      Parameters:
      value - the value to set.
    • newBuilder

      public static LoanProductDataV1.Builder newBuilder()
      Creates a new LoanProductDataV1 RecordBuilder.
      Returns:
      A new LoanProductDataV1 RecordBuilder
    • newBuilder

      public static LoanProductDataV1.Builder newBuilder(LoanProductDataV1.Builder other)
      Creates a new LoanProductDataV1 RecordBuilder by copying an existing Builder.
      Parameters:
      other - The existing builder to copy.
      Returns:
      A new LoanProductDataV1 RecordBuilder
    • newBuilder

      public static LoanProductDataV1.Builder newBuilder(LoanProductDataV1 other)
      Creates a new LoanProductDataV1 RecordBuilder by copying an existing LoanProductDataV1 instance.
      Parameters:
      other - The existing instance to copy.
      Returns:
      A new LoanProductDataV1 RecordBuilder
    • writeExternal

      public void writeExternal(ObjectOutput out) throws IOException
      Specified by:
      writeExternal in interface Externalizable
      Overrides:
      writeExternal in class org.apache.avro.specific.SpecificRecordBase
      Throws:
      IOException
    • readExternal

      public void readExternal(ObjectInput in) throws IOException
      Specified by:
      readExternal in interface Externalizable
      Overrides:
      readExternal in class org.apache.avro.specific.SpecificRecordBase
      Throws:
      IOException