title: AspectJ joinpoint and thread safety
body: <p>I have an AspectJ pointcut, given below, on method execution, when that method is invoked I am reading the arguments and validate it. The class in which the method is declared is <em>Singleton</em>. My question is will <strong>joinPoint.getThis()</strong> and <strong>joinPoint.getArgs()</strong> be thread safe.</p>
  
  <pre><code>@Before("atExecution() &amp;&amp; customPointcut(customAnnotation)")
  public void validate(JoinPoint joinPoint, CustomAnnotation customAnnotation)  {
  
      MethodSignature sig = (MethodSignature) joinPoint.getSignature();
      Method method =  sig.getMethod();
  
      ExecutableValidator execValidator = validator.forExecutables();
  
      //is this code thread safe?
      Set&lt;ConstraintViolation&lt;Object&gt;&gt; violations= execValidator.validateParameters(joinPoint.getThis(), method, joinPoint.getArgs());
  
  }
  </code></pre>