FINERACT-2267: Use the proper not-null annotation in Fineract code base
This commit is contained in:
committed by
Adam Saghy
parent
8d7d8ca7ef
commit
d71c0bd204
@@ -22,13 +22,13 @@ import java.util.Set;
|
||||
import java.util.TreeMap;
|
||||
import org.apache.fineract.cob.data.BusinessStepNameAndOrder;
|
||||
import org.apache.fineract.infrastructure.core.domain.AbstractPersistableCustom;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.springframework.lang.NonNull;
|
||||
|
||||
public interface COBBusinessStepService {
|
||||
|
||||
<T extends COBBusinessStep<S>, S extends AbstractPersistableCustom<Long>> S run(TreeMap<Long, String> executionMap, S item);
|
||||
|
||||
@NotNull
|
||||
@NonNull
|
||||
<T extends COBBusinessStep<S>, S extends AbstractPersistableCustom<Long>> Set<BusinessStepNameAndOrder> getCOBBusinessSteps(
|
||||
Class<T> businessStepClass, String cobJobName);
|
||||
}
|
||||
|
||||
+2
-2
@@ -36,9 +36,9 @@ import org.apache.fineract.infrastructure.core.domain.AbstractPersistableCustom;
|
||||
import org.apache.fineract.infrastructure.core.domain.ActionContext;
|
||||
import org.apache.fineract.infrastructure.core.service.ThreadLocalContextUtil;
|
||||
import org.apache.fineract.infrastructure.event.business.service.BusinessEventNotifierService;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.springframework.beans.factory.ListableBeanFactory;
|
||||
import org.springframework.context.ApplicationContext;
|
||||
import org.springframework.lang.NonNull;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
@Service
|
||||
@@ -92,7 +92,7 @@ public class COBBusinessStepServiceImpl implements COBBusinessStepService {
|
||||
return item;
|
||||
}
|
||||
|
||||
@NotNull
|
||||
@NonNull
|
||||
@Override
|
||||
public <T extends COBBusinessStep<S>, S extends AbstractPersistableCustom<Long>> Set<BusinessStepNameAndOrder> getCOBBusinessSteps(
|
||||
Class<T> businessStepClass, String cobJobName) {
|
||||
|
||||
+2
-2
@@ -30,11 +30,11 @@ import org.apache.fineract.infrastructure.core.domain.ActionContext;
|
||||
import org.apache.fineract.infrastructure.core.service.ThreadLocalContextUtil;
|
||||
import org.apache.fineract.useradministration.domain.AppUser;
|
||||
import org.apache.fineract.useradministration.domain.AppUserRepositoryWrapper;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.springframework.batch.core.StepContribution;
|
||||
import org.springframework.batch.core.scope.context.ChunkContext;
|
||||
import org.springframework.batch.core.step.tasklet.Tasklet;
|
||||
import org.springframework.batch.repeat.RepeatStatus;
|
||||
import org.springframework.lang.NonNull;
|
||||
import org.springframework.security.authentication.UsernamePasswordAuthenticationToken;
|
||||
import org.springframework.security.core.context.SecurityContextHolder;
|
||||
|
||||
@@ -48,7 +48,7 @@ public class InitialisationTasklet implements Tasklet {
|
||||
private final AppUserRepositoryWrapper userRepository;
|
||||
|
||||
@Override
|
||||
public RepeatStatus execute(@NotNull StepContribution contribution, @NotNull ChunkContext chunkContext) throws Exception {
|
||||
public RepeatStatus execute(@NonNull StepContribution contribution, @NonNull ChunkContext chunkContext) throws Exception {
|
||||
HashMap<BusinessDateType, LocalDate> businessDates = ThreadLocalContextUtil.getBusinessDates();
|
||||
AppUser user = userRepository.fetchSystemUser();
|
||||
UsernamePasswordAuthenticationToken auth = new UsernamePasswordAuthenticationToken(user, user.getPassword(), user.getAuthorities());
|
||||
|
||||
+2
-2
@@ -22,18 +22,18 @@ import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.fineract.infrastructure.core.domain.ActionContext;
|
||||
import org.apache.fineract.infrastructure.core.service.ThreadLocalContextUtil;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.springframework.batch.core.StepContribution;
|
||||
import org.springframework.batch.core.scope.context.ChunkContext;
|
||||
import org.springframework.batch.core.step.tasklet.Tasklet;
|
||||
import org.springframework.batch.repeat.RepeatStatus;
|
||||
import org.springframework.lang.NonNull;
|
||||
|
||||
@Slf4j
|
||||
@RequiredArgsConstructor
|
||||
public class ResetContextTasklet implements Tasklet {
|
||||
|
||||
@Override
|
||||
public RepeatStatus execute(@NotNull StepContribution contribution, @NotNull ChunkContext chunkContext) throws Exception {
|
||||
public RepeatStatus execute(@NonNull StepContribution contribution, @NonNull ChunkContext chunkContext) throws Exception {
|
||||
ThreadLocalContextUtil.setActionContext(ActionContext.DEFAULT);
|
||||
return RepeatStatus.FINISHED;
|
||||
}
|
||||
|
||||
+7
-7
@@ -30,7 +30,6 @@ import org.apache.fineract.cob.loan.LoanLockingService;
|
||||
import org.apache.fineract.infrastructure.core.domain.AbstractPersistableCustom;
|
||||
import org.apache.fineract.infrastructure.core.serialization.ThrowableSerialization;
|
||||
import org.apache.fineract.portfolio.loanaccount.domain.Loan;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.springframework.batch.core.annotation.OnProcessError;
|
||||
import org.springframework.batch.core.annotation.OnReadError;
|
||||
import org.springframework.batch.core.annotation.OnSkipInProcess;
|
||||
@@ -38,6 +37,7 @@ import org.springframework.batch.core.annotation.OnSkipInRead;
|
||||
import org.springframework.batch.core.annotation.OnSkipInWrite;
|
||||
import org.springframework.batch.core.annotation.OnWriteError;
|
||||
import org.springframework.batch.item.Chunk;
|
||||
import org.springframework.lang.NonNull;
|
||||
import org.springframework.transaction.TransactionStatus;
|
||||
import org.springframework.transaction.support.TransactionCallbackWithoutResult;
|
||||
import org.springframework.transaction.support.TransactionTemplate;
|
||||
@@ -55,7 +55,7 @@ public abstract class AbstractLoanItemListener {
|
||||
transactionTemplate.execute(new TransactionCallbackWithoutResult() {
|
||||
|
||||
@Override
|
||||
protected void doInTransactionWithoutResult(@NotNull TransactionStatus status) {
|
||||
protected void doInTransactionWithoutResult(@NonNull TransactionStatus status) {
|
||||
for (Long loanId : loanIds) {
|
||||
LoanAccountLock loanAccountLock = loanLockingService.findByLoanIdAndLockOwner(loanId, getLockOwner());
|
||||
if (loanAccountLock != null) {
|
||||
@@ -77,13 +77,13 @@ public abstract class AbstractLoanItemListener {
|
||||
}
|
||||
|
||||
@OnProcessError
|
||||
public void onProcessError(@NotNull Loan item, Exception e) {
|
||||
public void onProcessError(@NonNull Loan item, Exception e) {
|
||||
log.warn("Error was triggered during processing of Loan (id={}) due to: {}", item.getId(), ThrowableSerialization.serialize(e));
|
||||
updateAccountLockWithError(List.of(item.getId()), "Loan (id: %d) processing is failed", e);
|
||||
}
|
||||
|
||||
@OnWriteError
|
||||
public void onWriteError(Exception e, @NotNull Chunk<? extends Loan> items) {
|
||||
public void onWriteError(Exception e, @NonNull Chunk<? extends Loan> items) {
|
||||
List<Long> loanIds = items.getItems().stream().map(AbstractPersistableCustom::getId).toList();
|
||||
log.warn("Error was triggered during writing of Loans (ids={}) due to: {}", loanIds, ThrowableSerialization.serialize(e));
|
||||
|
||||
@@ -91,17 +91,17 @@ public abstract class AbstractLoanItemListener {
|
||||
}
|
||||
|
||||
@OnSkipInRead
|
||||
public void onSkipInRead(@NotNull Throwable e) {
|
||||
public void onSkipInRead(@NonNull Throwable e) {
|
||||
log.warn("Skipping was triggered during read!");
|
||||
}
|
||||
|
||||
@OnSkipInProcess
|
||||
public void onSkipInProcess(@NotNull Loan item, @NotNull Throwable e) {
|
||||
public void onSkipInProcess(@NonNull Loan item, @NonNull Throwable e) {
|
||||
log.warn("Skipping was triggered during processing of Loan (id={})", item.getId());
|
||||
}
|
||||
|
||||
@OnSkipInWrite
|
||||
public void onSkipInWrite(@NotNull Loan item, @NotNull Throwable e) {
|
||||
public void onSkipInWrite(@NonNull Loan item, @NonNull Throwable e) {
|
||||
log.warn("Skipping was triggered during writing of Loan (id={})", item.getId());
|
||||
}
|
||||
|
||||
|
||||
+3
-3
@@ -32,12 +32,12 @@ import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.fineract.cob.COBBusinessStepService;
|
||||
import org.apache.fineract.cob.data.BusinessStepNameAndOrder;
|
||||
import org.apache.fineract.portfolio.loanaccount.domain.Loan;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.springframework.batch.core.ExitStatus;
|
||||
import org.springframework.batch.core.StepExecution;
|
||||
import org.springframework.batch.core.annotation.AfterStep;
|
||||
import org.springframework.batch.item.ExecutionContext;
|
||||
import org.springframework.batch.item.ItemProcessor;
|
||||
import org.springframework.lang.NonNull;
|
||||
|
||||
@RequiredArgsConstructor
|
||||
@Slf4j
|
||||
@@ -51,7 +51,7 @@ public abstract class AbstractLoanItemProcessor implements ItemProcessor<Loan, L
|
||||
|
||||
@SuppressWarnings({ "unchecked" })
|
||||
@Override
|
||||
public Loan process(@NotNull Loan item) throws Exception {
|
||||
public Loan process(@NonNull Loan item) throws Exception {
|
||||
Set<BusinessStepNameAndOrder> businessSteps = (Set<BusinessStepNameAndOrder>) executionContext.get(LoanCOBConstant.BUSINESS_STEPS);
|
||||
if (businessSteps == null) {
|
||||
throw new IllegalStateException("No business steps found in the execution context");
|
||||
@@ -70,7 +70,7 @@ public abstract class AbstractLoanItemProcessor implements ItemProcessor<Loan, L
|
||||
}
|
||||
|
||||
@AfterStep
|
||||
public ExitStatus afterStep(@NotNull StepExecution stepExecution) {
|
||||
public ExitStatus afterStep(@NonNull StepExecution stepExecution) {
|
||||
return ExitStatus.COMPLETED;
|
||||
}
|
||||
|
||||
|
||||
+2
-2
@@ -27,11 +27,11 @@ import org.apache.fineract.cob.exceptions.LoanReadException;
|
||||
import org.apache.fineract.portfolio.loanaccount.domain.Loan;
|
||||
import org.apache.fineract.portfolio.loanaccount.domain.LoanRepository;
|
||||
import org.apache.fineract.portfolio.loanaccount.exception.LoanNotFoundException;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.springframework.batch.core.ExitStatus;
|
||||
import org.springframework.batch.core.StepExecution;
|
||||
import org.springframework.batch.core.annotation.AfterStep;
|
||||
import org.springframework.batch.item.ItemReader;
|
||||
import org.springframework.lang.NonNull;
|
||||
|
||||
@Slf4j
|
||||
@RequiredArgsConstructor
|
||||
@@ -56,7 +56,7 @@ public abstract class AbstractLoanItemReader implements ItemReader<Loan> {
|
||||
}
|
||||
|
||||
@AfterStep
|
||||
public ExitStatus afterStep(@NotNull StepExecution stepExecution) {
|
||||
public ExitStatus afterStep(@NonNull StepExecution stepExecution) {
|
||||
return ExitStatus.COMPLETED;
|
||||
}
|
||||
|
||||
|
||||
+2
-2
@@ -24,9 +24,9 @@ import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.fineract.cob.domain.LockOwner;
|
||||
import org.apache.fineract.infrastructure.core.domain.AbstractPersistableCustom;
|
||||
import org.apache.fineract.portfolio.loanaccount.domain.Loan;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.springframework.batch.item.Chunk;
|
||||
import org.springframework.batch.item.data.RepositoryItemWriter;
|
||||
import org.springframework.lang.NonNull;
|
||||
|
||||
@Slf4j
|
||||
@RequiredArgsConstructor
|
||||
@@ -35,7 +35,7 @@ public abstract class AbstractLoanItemWriter extends RepositoryItemWriter<Loan>
|
||||
private final LoanLockingService loanLockingService;
|
||||
|
||||
@Override
|
||||
public void write(@NotNull Chunk<? extends Loan> items) throws Exception {
|
||||
public void write(@NonNull Chunk<? extends Loan> items) throws Exception {
|
||||
if (!items.isEmpty()) {
|
||||
super.write(items);
|
||||
List<Long> loanIds = items.getItems().stream().map(AbstractPersistableCustom::getId).toList();
|
||||
|
||||
+3
-3
@@ -34,12 +34,12 @@ import org.apache.fineract.cob.domain.LoanAccountLock;
|
||||
import org.apache.fineract.cob.domain.LockOwner;
|
||||
import org.apache.fineract.cob.exceptions.LoanLockCannotBeAppliedException;
|
||||
import org.apache.fineract.infrastructure.core.config.FineractProperties;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.springframework.batch.core.StepContribution;
|
||||
import org.springframework.batch.core.scope.context.ChunkContext;
|
||||
import org.springframework.batch.core.step.tasklet.Tasklet;
|
||||
import org.springframework.batch.item.ExecutionContext;
|
||||
import org.springframework.batch.repeat.RepeatStatus;
|
||||
import org.springframework.lang.NonNull;
|
||||
import org.springframework.transaction.TransactionStatus;
|
||||
import org.springframework.transaction.support.TransactionCallbackWithoutResult;
|
||||
import org.springframework.transaction.support.TransactionTemplate;
|
||||
@@ -57,7 +57,7 @@ public class ApplyLoanLockTasklet implements Tasklet {
|
||||
|
||||
@Override
|
||||
@SuppressFBWarnings("SLF4J_SIGN_ONLY_FORMAT")
|
||||
public RepeatStatus execute(@NotNull StepContribution contribution, @NotNull ChunkContext chunkContext)
|
||||
public RepeatStatus execute(@NonNull StepContribution contribution, @NonNull ChunkContext chunkContext)
|
||||
throws LoanLockCannotBeAppliedException {
|
||||
ExecutionContext executionContext = contribution.getStepExecution().getExecutionContext();
|
||||
long numberOfExecutions = contribution.getStepExecution().getCommitCount();
|
||||
@@ -102,7 +102,7 @@ public class ApplyLoanLockTasklet implements Tasklet {
|
||||
transactionTemplate.execute(new TransactionCallbackWithoutResult() {
|
||||
|
||||
@Override
|
||||
protected void doInTransactionWithoutResult(@NotNull TransactionStatus status) {
|
||||
protected void doInTransactionWithoutResult(@NonNull TransactionStatus status) {
|
||||
loanLockingService.applyLock(toBeProcessedLoanIds, LockOwner.LOAN_COB_CHUNK_PROCESSING);
|
||||
}
|
||||
});
|
||||
|
||||
+2
-2
@@ -21,10 +21,10 @@ package org.apache.fineract.cob.loan;
|
||||
import java.util.List;
|
||||
import java.util.concurrent.LinkedBlockingQueue;
|
||||
import org.apache.fineract.portfolio.loanaccount.domain.LoanRepository;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.springframework.batch.core.StepExecution;
|
||||
import org.springframework.batch.core.annotation.BeforeStep;
|
||||
import org.springframework.batch.item.ExecutionContext;
|
||||
import org.springframework.lang.NonNull;
|
||||
|
||||
public class InlineCOBLoanItemReader extends AbstractLoanItemReader {
|
||||
|
||||
@@ -34,7 +34,7 @@ public class InlineCOBLoanItemReader extends AbstractLoanItemReader {
|
||||
|
||||
@BeforeStep
|
||||
@SuppressWarnings({ "unchecked" })
|
||||
public void beforeStep(@NotNull StepExecution stepExecution) {
|
||||
public void beforeStep(@NonNull StepExecution stepExecution) {
|
||||
ExecutionContext executionContext = stepExecution.getJobExecution().getExecutionContext();
|
||||
List<Long> loanIds = (List<Long>) executionContext.get(LoanCOBConstant.LOAN_COB_PARAMETER);
|
||||
setRemainingData(new LinkedBlockingQueue<>(loanIds));
|
||||
|
||||
+2
-2
@@ -33,7 +33,6 @@ import org.apache.fineract.cob.data.LoanCOBParameter;
|
||||
import org.apache.fineract.cob.data.LoanCOBPartition;
|
||||
import org.apache.fineract.infrastructure.jobs.service.JobName;
|
||||
import org.apache.fineract.infrastructure.springbatch.PropertyService;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.springframework.batch.core.JobExecution;
|
||||
import org.springframework.batch.core.explore.JobExplorer;
|
||||
import org.springframework.batch.core.launch.JobExecutionNotRunningException;
|
||||
@@ -42,6 +41,7 @@ import org.springframework.batch.core.launch.NoSuchJobExecutionException;
|
||||
import org.springframework.batch.core.partition.support.Partitioner;
|
||||
import org.springframework.batch.item.ExecutionContext;
|
||||
import org.springframework.beans.factory.annotation.Value;
|
||||
import org.springframework.lang.NonNull;
|
||||
import org.springframework.util.StopWatch;
|
||||
|
||||
@Slf4j
|
||||
@@ -65,7 +65,7 @@ public class LoanCOBPartitioner implements Partitioner {
|
||||
@Setter
|
||||
private Boolean isCatchUp;
|
||||
|
||||
@NotNull
|
||||
@NonNull
|
||||
@Override
|
||||
public Map<String, ExecutionContext> partition(int gridSize) {
|
||||
int partitionSize = propertyService.getPartitionSize(LoanCOBConstant.JOB_NAME);
|
||||
|
||||
@@ -29,10 +29,10 @@ import org.apache.fineract.cob.data.LoanCOBParameter;
|
||||
import org.apache.fineract.cob.domain.LoanAccountLock;
|
||||
import org.apache.fineract.cob.domain.LockOwner;
|
||||
import org.apache.fineract.portfolio.loanaccount.domain.LoanRepository;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.springframework.batch.core.StepExecution;
|
||||
import org.springframework.batch.core.annotation.BeforeStep;
|
||||
import org.springframework.batch.item.ExecutionContext;
|
||||
import org.springframework.lang.NonNull;
|
||||
|
||||
@Slf4j
|
||||
public class LoanItemReader extends AbstractLoanItemReader {
|
||||
@@ -51,7 +51,7 @@ public class LoanItemReader extends AbstractLoanItemReader {
|
||||
|
||||
@BeforeStep
|
||||
@SuppressWarnings({ "unchecked" })
|
||||
public void beforeStep(@NotNull StepExecution stepExecution) {
|
||||
public void beforeStep(@NonNull StepExecution stepExecution) {
|
||||
ExecutionContext executionContext = stepExecution.getExecutionContext();
|
||||
LoanCOBParameter loanCOBParameter = (LoanCOBParameter) executionContext.get(LoanCOBConstant.LOAN_COB_PARAMETER);
|
||||
List<Long> loanIds;
|
||||
|
||||
+2
-2
@@ -60,7 +60,6 @@ import org.apache.fineract.infrastructure.jobs.exception.JobNotFoundException;
|
||||
import org.apache.fineract.infrastructure.jobs.service.InlineExecutorService;
|
||||
import org.apache.fineract.infrastructure.security.service.PlatformSecurityContext;
|
||||
import org.apache.fineract.infrastructure.springbatch.SpringBatchJobConstants;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.springframework.batch.core.BatchStatus;
|
||||
import org.springframework.batch.core.Job;
|
||||
import org.springframework.batch.core.JobExecution;
|
||||
@@ -72,6 +71,7 @@ import org.springframework.batch.core.explore.JobExplorer;
|
||||
import org.springframework.batch.core.launch.JobLauncher;
|
||||
import org.springframework.batch.core.launch.NoSuchJobException;
|
||||
import org.springframework.context.annotation.Conditional;
|
||||
import org.springframework.lang.NonNull;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.TransactionStatus;
|
||||
import org.springframework.transaction.annotation.Propagation;
|
||||
@@ -221,7 +221,7 @@ public class InlineLoanCOBExecutorServiceImpl implements InlineExecutorService<L
|
||||
transactionTemplate.execute(new TransactionCallbackWithoutResult() {
|
||||
|
||||
@Override
|
||||
protected void doInTransactionWithoutResult(@NotNull TransactionStatus status) {
|
||||
protected void doInTransactionWithoutResult(@NonNull TransactionStatus status) {
|
||||
List<LoanAccountLock> loanAccountLocks = getLoanAccountLocks(loanIds, businessDate);
|
||||
loanAccountLocks.forEach(loanAccountLock -> {
|
||||
try {
|
||||
|
||||
+3
-5
@@ -19,7 +19,6 @@
|
||||
package org.apache.fineract.infrastructure.core.auditing;
|
||||
|
||||
import org.apache.fineract.infrastructure.core.domain.AbstractAuditableWithUTCDateTimeCustom;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.springframework.data.auditing.AuditableBeanWrapper;
|
||||
import org.springframework.data.auditing.AuditingHandler;
|
||||
import org.springframework.data.auditing.DateTimeProvider;
|
||||
@@ -28,6 +27,7 @@ import org.springframework.data.mapping.PersistentEntity;
|
||||
import org.springframework.data.mapping.PersistentProperty;
|
||||
import org.springframework.data.mapping.context.MappingContext;
|
||||
import org.springframework.data.mapping.context.PersistentEntities;
|
||||
import org.springframework.lang.NonNull;
|
||||
import org.springframework.util.Assert;
|
||||
|
||||
public class CustomAuditingHandler extends AuditingHandler {
|
||||
@@ -73,9 +73,8 @@ public class CustomAuditingHandler extends AuditingHandler {
|
||||
* @param source
|
||||
* must not be {@literal null}.
|
||||
*/
|
||||
@NotNull
|
||||
@Override
|
||||
public <T> T markCreated(@NotNull T source) {
|
||||
public <T> T markCreated(@NonNull T source) {
|
||||
Assert.notNull(source, "Source entity must not be null");
|
||||
setDateTimeProvider(fetchDateTimeProvider(source));
|
||||
return super.markCreated(source);
|
||||
@@ -87,9 +86,8 @@ public class CustomAuditingHandler extends AuditingHandler {
|
||||
* @param source
|
||||
* must not be {@literal null}.
|
||||
*/
|
||||
@NotNull
|
||||
@Override
|
||||
public <T> T markModified(@NotNull T source) {
|
||||
public <T> T markModified(@NonNull T source) {
|
||||
Assert.notNull(source, "Source entity must not be null");
|
||||
setDateTimeProvider(fetchDateTimeProvider(source));
|
||||
return super.markModified(source);
|
||||
|
||||
+1
-1
@@ -18,10 +18,10 @@
|
||||
*/
|
||||
package org.apache.fineract.infrastructure.core.auditing;
|
||||
|
||||
import jakarta.validation.constraints.NotNull;
|
||||
import java.time.temporal.TemporalAccessor;
|
||||
import java.util.Optional;
|
||||
import org.apache.fineract.infrastructure.core.service.DateUtils;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.springframework.data.auditing.DateTimeProvider;
|
||||
|
||||
public enum CustomDateTimeProvider implements DateTimeProvider {
|
||||
|
||||
+3
-3
@@ -48,11 +48,11 @@ import org.apache.fineract.infrastructure.dataqueries.data.ResultsetColumnHeader
|
||||
import org.apache.fineract.infrastructure.dataqueries.data.ResultsetColumnValueData;
|
||||
import org.apache.fineract.infrastructure.dataqueries.data.ResultsetRowData;
|
||||
import org.apache.fineract.infrastructure.dataqueries.exception.DatatableNotFoundException;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.springframework.dao.DataAccessException;
|
||||
import org.springframework.jdbc.core.JdbcTemplate;
|
||||
import org.springframework.jdbc.support.rowset.SqlRowSet;
|
||||
import org.springframework.jdbc.support.rowset.SqlRowSetMetaData;
|
||||
import org.springframework.lang.NonNull;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
@Service
|
||||
@@ -134,14 +134,14 @@ public class GenericDataServiceImpl implements GenericDataService {
|
||||
return columnHeaders;
|
||||
}
|
||||
|
||||
@NotNull
|
||||
@NonNull
|
||||
@Override
|
||||
public List<ResultsetRowData> fillResultsetRowData(final String sql, List<ResultsetColumnHeaderData> columnHeaders) {
|
||||
final SqlRowSet rs = jdbcTemplate.queryForRowSet(sql); // NOSONAR
|
||||
return fillResultsetRowData(rs, columnHeaders);
|
||||
}
|
||||
|
||||
@NotNull
|
||||
@NonNull
|
||||
private static List<ResultsetRowData> fillResultsetRowData(SqlRowSet rs, List<ResultsetColumnHeaderData> columnHeaders) {
|
||||
final SqlRowSetMetaData rsmd = rs.getMetaData();
|
||||
final List<ResultsetRowData> resultsetDataRows = new ArrayList<>();
|
||||
|
||||
+2
-2
@@ -23,7 +23,7 @@ import java.util.Map;
|
||||
import java.util.stream.Collectors;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.apache.fineract.infrastructure.core.service.DateUtils;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.springframework.lang.NonNull;
|
||||
|
||||
public final class DatatableExportUtil {
|
||||
|
||||
@@ -70,7 +70,7 @@ public final class DatatableExportUtil {
|
||||
}
|
||||
}
|
||||
|
||||
@NotNull
|
||||
@NonNull
|
||||
private static String generateReportFileName(int maxLength, String folder, String extension, String reportName,
|
||||
Map<String, String> reportParams) {
|
||||
String extensionWithDot = extension.startsWith(".") ? extension : "." + extension;
|
||||
|
||||
+2
-2
@@ -19,9 +19,9 @@
|
||||
package org.apache.fineract.infrastructure.springbatch;
|
||||
|
||||
import org.apache.fineract.infrastructure.core.service.ThreadLocalContextUtil;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.springframework.batch.integration.async.StepExecutionInterceptor;
|
||||
import org.springframework.batch.integration.partition.StepExecutionRequest;
|
||||
import org.springframework.lang.NonNull;
|
||||
import org.springframework.messaging.Message;
|
||||
import org.springframework.messaging.MessageChannel;
|
||||
import org.springframework.messaging.support.GenericMessage;
|
||||
@@ -29,7 +29,7 @@ import org.springframework.messaging.support.GenericMessage;
|
||||
public class OutputChannelInterceptor extends StepExecutionInterceptor {
|
||||
|
||||
@Override
|
||||
public Message<?> preSend(Message<?> message, @NotNull MessageChannel channel) {
|
||||
public Message<?> preSend(Message<?> message, @NonNull MessageChannel channel) {
|
||||
StepExecutionRequest stepExecutionRequest = (StepExecutionRequest) message.getPayload();
|
||||
ContextualMessage contextualMessage = new ContextualMessage();
|
||||
contextualMessage.setStepExecutionRequest(stepExecutionRequest);
|
||||
|
||||
+3
-3
@@ -90,7 +90,7 @@ import org.apache.fineract.portfolio.loanaccount.exception.LoanRepaymentSchedule
|
||||
import org.apache.fineract.portfolio.loanaccount.loanschedule.domain.LoanScheduleType;
|
||||
import org.apache.fineract.portfolio.loanaccount.service.LoanUtilService;
|
||||
import org.apache.fineract.portfolio.loanproduct.domain.LoanProduct;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.springframework.lang.NonNull;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
@Component("loanTransactionValidator")
|
||||
@@ -912,7 +912,7 @@ public final class LoanTransactionValidatorImpl implements LoanTransactionValida
|
||||
}
|
||||
}
|
||||
|
||||
private static @NotNull BigDecimal collectTotalCollateral(Set<LoanCollateralManagement> loanCollateralManagements) {
|
||||
private static @NonNull BigDecimal collectTotalCollateral(Set<LoanCollateralManagement> loanCollateralManagements) {
|
||||
BigDecimal totalCollateral = BigDecimal.ZERO;
|
||||
|
||||
for (LoanCollateralManagement loanCollateralManagement : loanCollateralManagements) {
|
||||
@@ -924,7 +924,7 @@ public final class LoanTransactionValidatorImpl implements LoanTransactionValida
|
||||
return totalCollateral;
|
||||
}
|
||||
|
||||
private static @NotNull Set<String> getDisbursementParameters(boolean isAccountTransfer) {
|
||||
private static @NonNull Set<String> getDisbursementParameters(boolean isAccountTransfer) {
|
||||
Set<String> disbursementParameters;
|
||||
|
||||
if (isAccountTransfer) {
|
||||
|
||||
+2
-2
@@ -142,13 +142,13 @@ import org.apache.fineract.portfolio.paymentdetail.data.PaymentDetailData;
|
||||
import org.apache.fineract.portfolio.paymenttype.data.PaymentTypeData;
|
||||
import org.apache.fineract.portfolio.paymenttype.service.PaymentTypeReadPlatformService;
|
||||
import org.apache.fineract.useradministration.domain.AppUser;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.springframework.dao.DataAccessException;
|
||||
import org.springframework.dao.EmptyResultDataAccessException;
|
||||
import org.springframework.data.domain.Pageable;
|
||||
import org.springframework.jdbc.core.JdbcTemplate;
|
||||
import org.springframework.jdbc.core.ResultSetExtractor;
|
||||
import org.springframework.jdbc.core.RowMapper;
|
||||
import org.springframework.lang.NonNull;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
import org.springframework.util.CollectionUtils;
|
||||
|
||||
@@ -1316,7 +1316,7 @@ public class LoanReadPlatformServiceImpl implements LoanReadPlatformService, Loa
|
||||
}
|
||||
|
||||
@Override
|
||||
public LoanScheduleData extractData(@NotNull final ResultSet rs) throws SQLException, DataAccessException {
|
||||
public LoanScheduleData extractData(@NonNull final ResultSet rs) throws SQLException, DataAccessException {
|
||||
BigDecimal waivedChargeAmount = BigDecimal.ZERO;
|
||||
for (DisbursementData disbursementDetail : disbursementData) {
|
||||
waivedChargeAmount = waivedChargeAmount.add(disbursementDetail.getWaivedChargeAmount());
|
||||
|
||||
+3
-3
@@ -67,10 +67,10 @@ import org.apache.fineract.portfolio.loanproduct.domain.LoanSupportedInterestRef
|
||||
import org.apache.fineract.portfolio.loanproduct.exception.LoanProductNotFoundException;
|
||||
import org.apache.fineract.portfolio.rate.data.RateData;
|
||||
import org.apache.fineract.portfolio.rate.service.RateReadService;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.springframework.dao.EmptyResultDataAccessException;
|
||||
import org.springframework.jdbc.core.JdbcTemplate;
|
||||
import org.springframework.jdbc.core.RowMapper;
|
||||
import org.springframework.lang.NonNull;
|
||||
|
||||
@RequiredArgsConstructor
|
||||
public class LoanProductReadPlatformServiceImpl implements LoanProductReadPlatformService {
|
||||
@@ -310,7 +310,7 @@ public class LoanProductReadPlatformServiceImpl implements LoanProductReadPlatfo
|
||||
}
|
||||
|
||||
@Override
|
||||
public LoanProductData mapRow(@NotNull final ResultSet rs, @SuppressWarnings("unused") final int rowNum) throws SQLException {
|
||||
public LoanProductData mapRow(@NonNull final ResultSet rs, @SuppressWarnings("unused") final int rowNum) throws SQLException {
|
||||
|
||||
final Long id = JdbcSupport.getLong(rs, "id");
|
||||
final String name = rs.getString("name");
|
||||
@@ -832,7 +832,7 @@ public class LoanProductReadPlatformServiceImpl implements LoanProductReadPlatfo
|
||||
}
|
||||
|
||||
@Override
|
||||
public LoanProductData mapRow(@NotNull final ResultSet rs, @SuppressWarnings("unused") final int rowNum) throws SQLException {
|
||||
public LoanProductData mapRow(@NonNull final ResultSet rs, @SuppressWarnings("unused") final int rowNum) throws SQLException {
|
||||
|
||||
final Long id = JdbcSupport.getLong(rs, "id");
|
||||
final String name = rs.getString("name");
|
||||
|
||||
+2
-2
@@ -64,7 +64,6 @@ import org.apache.fineract.infrastructure.creditbureau.domain.TokenRepositoryWra
|
||||
import org.apache.fineract.infrastructure.creditbureau.serialization.CreditBureauTokenCommandFromApiJsonDeserializer;
|
||||
import org.apache.fineract.infrastructure.security.service.PlatformSecurityContext;
|
||||
import org.glassfish.jersey.media.multipart.FormDataContentDisposition;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.junit.jupiter.api.BeforeEach;
|
||||
import org.junit.jupiter.api.Test;
|
||||
import org.mockito.ArgumentCaptor;
|
||||
@@ -72,6 +71,7 @@ import org.mockito.InjectMocks;
|
||||
import org.mockito.Mock;
|
||||
import org.mockito.MockitoAnnotations;
|
||||
import org.mockito.Spy;
|
||||
import org.springframework.lang.NonNull;
|
||||
|
||||
@SuppressFBWarnings(value = "RV_EXCEPTION_NOT_THROWN", justification = "False positive")
|
||||
public class ThitsaWorksCreditBureauIntegrationWritePlatformServiceImplTest {
|
||||
@@ -402,7 +402,7 @@ public class ThitsaWorksCreditBureauIntegrationWritePlatformServiceImplTest {
|
||||
assertNotNull(token);
|
||||
}
|
||||
|
||||
@NotNull
|
||||
@NonNull
|
||||
private String createValidToken() throws JsonProcessingException {
|
||||
ObjectNode jsonResponse = mapper.createObjectNode();
|
||||
jsonResponse.put("access_token", "AccessToken");
|
||||
|
||||
+2
-2
@@ -26,7 +26,6 @@ import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.concurrent.CompletableFuture;
|
||||
import org.apache.fineract.infrastructure.core.config.FineractProperties;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.junit.jupiter.api.Assertions;
|
||||
import org.junit.jupiter.api.Test;
|
||||
import org.junit.jupiter.api.extension.ExtendWith;
|
||||
@@ -35,6 +34,7 @@ import org.mockito.Mockito;
|
||||
import org.mockito.junit.jupiter.MockitoExtension;
|
||||
import org.springframework.kafka.core.KafkaTemplate;
|
||||
import org.springframework.kafka.support.SendResult;
|
||||
import org.springframework.lang.NonNull;
|
||||
|
||||
@ExtendWith(MockitoExtension.class)
|
||||
@SuppressFBWarnings(value = "RV_EXCEPTION_NOT_THROWN", justification = "False positive")
|
||||
@@ -112,7 +112,7 @@ class KafkaExternalEventProducerTest {
|
||||
Mockito.verifyNoMoreInteractions(kafkaTemplate);
|
||||
}
|
||||
|
||||
@NotNull
|
||||
@NonNull
|
||||
private static FineractProperties createProperties() {
|
||||
FineractProperties props = new FineractProperties();
|
||||
|
||||
|
||||
+3
-3
@@ -46,12 +46,12 @@ import org.apache.fineract.portfolio.delinquency.domain.LoanDelinquencyAction;
|
||||
import org.apache.fineract.portfolio.delinquency.helper.DelinquencyEffectivePauseHelper;
|
||||
import org.apache.fineract.portfolio.loanaccount.domain.Loan;
|
||||
import org.apache.fineract.portfolio.loanaccount.domain.LoanStatus;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
import org.junit.jupiter.api.Assertions;
|
||||
import org.junit.jupiter.api.Test;
|
||||
import org.junit.jupiter.api.function.Executable;
|
||||
import org.mockito.Mockito;
|
||||
import org.springframework.lang.NonNull;
|
||||
|
||||
class DelinquencyActionParseAndValidatorTest {
|
||||
|
||||
@@ -380,7 +380,7 @@ class DelinquencyActionParseAndValidatorTest {
|
||||
Assertions.assertEquals(localDate("19 September 2022"), parsedDelinquencyAction.getEndDate());
|
||||
}
|
||||
|
||||
@NotNull
|
||||
@NonNull
|
||||
private JsonCommand delinquencyAction(@Nullable String action, @Nullable String startDate, @Nullable String endDate)
|
||||
throws JsonProcessingException {
|
||||
Map<String, Object> map = new HashMap<>();
|
||||
@@ -396,7 +396,7 @@ class DelinquencyActionParseAndValidatorTest {
|
||||
return LocalDate.parse(date, DATE_TIME_FORMATTER);
|
||||
}
|
||||
|
||||
@NotNull
|
||||
@NonNull
|
||||
private JsonCommand createJsonCommand(Map<String, Object> jsonMap) throws JsonProcessingException {
|
||||
ObjectMapper objectMapper = new ObjectMapper();
|
||||
String json = objectMapper.writerWithDefaultPrettyPrinter().writeValueAsString(jsonMap);
|
||||
|
||||
Reference in New Issue
Block a user