Skip to content

Commit

Permalink
CORE-20768 Improve logging around registration commands (#6259)
Browse files Browse the repository at this point in the history
  • Loading branch information
YashNabar authored Jul 5, 2024
1 parent eacdfd1 commit 0b28f8f
Showing 1 changed file with 16 additions and 10 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,9 @@ import net.corda.membership.read.MembershipGroupReaderProvider
import net.corda.messaging.api.processor.StateAndEventProcessor
import net.corda.messaging.api.processor.StateAndEventProcessor.State
import net.corda.messaging.api.records.Record
import net.corda.utilities.debug
import net.corda.utilities.time.Clock
import org.slf4j.Logger
import org.slf4j.LoggerFactory

@Suppress("LongParameterList")
Expand Down Expand Up @@ -133,53 +135,53 @@ class RegistrationProcessor(
state: State<RegistrationState>?,
event: Record<String, RegistrationCommand>,
): StateAndEventProcessor.Response<RegistrationState> {
logger.info("Processing registration command for registration ID ${event.key}.")
logger.debug { "Received registration command with key '${event.key}'." }
val result = try {
val stateValue = state?.value
when (val command = event.value?.command) {
is QueueRegistration -> {
logger.info("Received queue registration command.")
logger.info { QueueRegistration::class.java }
handlers[QueueRegistration::class.java]?.invoke(stateValue, event)
}

is CheckForPendingRegistration -> {
logger.info("Received check for pending registration command.")
logger.info { CheckForPendingRegistration::class.java }
handlers[CheckForPendingRegistration::class.java]?.invoke(stateValue, event)
}

is StartRegistration -> {
logger.info("Received start registration command.")
logger.info { StartRegistration::class.java }
handlers[StartRegistration::class.java]?.invoke(stateValue, event)
}

is VerifyMember -> {
logger.info("Received verify member during registration command.")
logger.info { VerifyMember::class.java }
handlers[VerifyMember::class.java]?.invoke(stateValue, event)
}

is ProcessMemberVerificationResponse -> {
logger.info("Received process member verification response during registration command.")
logger.info { ProcessMemberVerificationResponse::class.java }
handlers[ProcessMemberVerificationResponse::class.java]?.invoke(stateValue, event)
}

is ApproveRegistration -> {
logger.info("Received approve registration command.")
logger.info { ApproveRegistration::class.java }
handlers[ApproveRegistration::class.java]?.invoke(stateValue, event)
}

is DeclineRegistration -> {
logger.info("Received decline registration command.")
logger.info { DeclineRegistration::class.java }
logger.warn("Declining registration because: ${command.reason}")
handlers[DeclineRegistration::class.java]?.invoke(stateValue, event)
}

is ProcessMemberVerificationRequest -> {
logger.info("Received process member verification request during registration command.")
logger.info { ProcessMemberVerificationRequest::class.java }
handlers[ProcessMemberVerificationRequest::class.java]?.invoke(stateValue, event)
}

is PersistMemberRegistrationState -> {
logger.info("Received persist member registration state command.")
logger.info { PersistMemberRegistrationState::class.java }
handlers[PersistMemberRegistrationState::class.java]?.invoke(stateValue, event)
}

Expand All @@ -206,4 +208,8 @@ class RegistrationProcessor(
private fun createEmptyResult(state: RegistrationState? = null): RegistrationHandlerResult {
return RegistrationHandlerResult(state, emptyList())
}

private fun <T> Logger.info(command: () -> Class<T>) {
info("Processing registration command: ${command().simpleName}.")
}
}

0 comments on commit 0b28f8f

Please sign in to comment.