// Path: src/main/java/com/poseidon/model/AtributosClasse.java
// public class AtributosClasse {
// 
// 	private String metodoNome;
// 
// 	private String argumentos;
// 
// 	private String returnType;
// 
// 	public static AtributosClasse builderAtributosClasse(JoinPoint joinPoint) {
// 		AtributosClasse atributosClasse = new AtributosClasse();
// 		Signature signature = joinPoint.getSignature();
// 		String methodName = signature.getName();
// 		String arguments = Arrays.toString(joinPoint.getArgs());
// 		atributosClasse.setMetodoNome(methodName);
// 		atributosClasse.setArgumentos(arguments);
// 
// 		final MethodSignature methodSignature = (MethodSignature) joinPoint.getSignature();
// 		Method method = methodSignature.getMethod();
// 		atributosClasse.setReturnType(method.getReturnType().getName());
// 
// 		return atributosClasse;
// 	};
// 
// 	public String getMetodoNome() {
// 		return metodoNome;
// 	}
// 
// 	public void setMetodoNome(String metodoNome) {
// 		this.metodoNome = metodoNome;
// 	}
// 
// 	public String getArgumentos() {
// 		return argumentos;
// 	}
// 
// 	public void setArgumentos(String argumentos) {
// 		this.argumentos = argumentos;
// 	}
// 
// 	public String getReturnType() {
// 		return returnType;
// 	}
// 
// 	public void setReturnType(String returnType) {
// 		this.returnType = returnType;
// 	}
// 
// 	@Override
// 	public String toString() {
// 		return "AtributosClasse [metodoNome=" + metodoNome + ", argumentos=" + argumentos + ", returnType=" + returnType
// 				+ "]";
// 	}
// }


import com.poseidon.model.AtributosClasse;
import org.aspectj.lang.JoinPoint;
import org.aspectj.lang.annotation.AfterReturning;
import org.aspectj.lang.annotation.AfterThrowing;
import org.aspectj.lang.annotation.Aspect;
import org.aspectj.lang.annotation.Before;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Component;
package com.poseidon.advices;


@Aspect
@Component
public class LogAspects {

	

	@Before("execution(* com.poseidon.*..*(..))")
	public void logServiceAccess(JoinPoint joinPoint) {
		Logger LOGGER = createLog(joinPoint);
// Path: src/main/java/com/poseidon/model/AtributosClasse.java
// public class AtributosClasse {
// 
// 	private String metodoNome;
// 
// 	private String argumentos;
// 
// 	private String returnType;
// 
// 	public static AtributosClasse builderAtributosClasse(JoinPoint joinPoint) {
// 		AtributosClasse atributosClasse = new AtributosClasse();
// 		Signature signature = joinPoint.getSignature();
// 		String methodName = signature.getName();
// 		String arguments = Arrays.toString(joinPoint.getArgs());
// 		atributosClasse.setMetodoNome(methodName);
// 		atributosClasse.setArgumentos(arguments);
// 
// 		final MethodSignature methodSignature = (MethodSignature) joinPoint.getSignature();
// 		Method method = methodSignature.getMethod();
// 		atributosClasse.setReturnType(method.getReturnType().getName());
// 
// 		return atributosClasse;
// 	};
// 
// 	public String getMetodoNome() {
// 		return metodoNome;
// 	}
// 
// 	public void setMetodoNome(String metodoNome) {
// 		this.metodoNome = metodoNome;
// 	}
// 
// 	public String getArgumentos() {
// 		return argumentos;
// 	}
// 
// 	public void setArgumentos(String argumentos) {
// 		this.argumentos = argumentos;
// 	}
// 
// 	public String getReturnType() {
// 		return returnType;
// 	}
// 
// 	public void setReturnType(String returnType) {
// 		this.returnType = returnType;
// 	}
// 
// 	@Override
// 	public String toString() {
// 		return "AtributosClasse [metodoNome=" + metodoNome + ", argumentos=" + argumentos + ", returnType=" + returnType
// 				+ "]";
// 	}
// }


// Path: src/main/java/com/poseidon/advices/LogAspects.java
import com.poseidon.model.AtributosClasse;
import org.aspectj.lang.JoinPoint;
import org.aspectj.lang.annotation.AfterReturning;
import org.aspectj.lang.annotation.AfterThrowing;
import org.aspectj.lang.annotation.Aspect;
import org.aspectj.lang.annotation.Before;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Component;

package com.poseidon.advices;


@Aspect
@Component
public class LogAspects {

	

	@Before("execution(* com.poseidon.*..*(..))")
	public void logServiceAccess(JoinPoint joinPoint) {
		Logger LOGGER = createLog(joinPoint);
		AtributosClasse atributosClasse = criaAtributosClasse(joinPoint);