package org.octopus.internal.web.utils


//@Aspect
//@Component
class LoggingAspect {
//    @Around("execution(* org.octopus.lorca_core.web.controllers.*.*(..))")
//    @Throws(Throwable::class)
//    fun logMethodDetails(proceedingJoinPoint: ProceedingJoinPoint): Any? {
//        val methodName = proceedingJoinPoint.signature.toShortString()
//        val arguments = proceedingJoinPoint.args
//
//        // Log method entry and arguments
//        logger.info("Entering method: {} with arguments: {}", methodName, Arrays.toString(arguments))
//
//        var result: Any? = null
//
//        try {
//            // Proceed with method execution
//            result = proceedingJoinPoint.proceed()
//            logger.info("Exiting method: {} with result: {}", methodName, result)
//        } catch (ex: Throwable) {
//            // Handle exception logging
//            logger.error(
//                "Exception in method: {} with arguments: {} and exception: {}",
//                methodName,
//                arguments.contentToString(),
//                ex.message
//            )
//            throw ex // Re-throw the exception so that Spring's exception resolver can handle it
//        }
//
//        return result
//    }
//
//    companion object {
//        private val logger: Logger = LoggerFactory.getLogger(LoggingAspect::class.java)
//    }
}