001package co.codewizards.cloudstore.ls.core.invoke.filter; 002 003import static co.codewizards.cloudstore.core.util.AssertUtil.*; 004import co.codewizards.cloudstore.ls.core.invoke.MethodInvocationRequest; 005import co.codewizards.cloudstore.ls.core.invoke.ObjectManager; 006 007public class ExtMethodInvocationRequest { 008 009 private final ObjectManager objectManager; 010 private final MethodInvocationRequest methodInvocationRequest; 011 private final Class<?> targetClass; 012 013 public ExtMethodInvocationRequest(final ObjectManager objectManager, final MethodInvocationRequest methodInvocationRequest, final Class<?> targetClass) { 014 this.objectManager = assertNotNull(objectManager, "objectManager"); 015 this.methodInvocationRequest = assertNotNull(methodInvocationRequest, "methodInvocationRequest"); 016 this.targetClass = targetClass == null ? methodInvocationRequest.getObject().getClass() : targetClass; 017 assertNotNull(this.targetClass, "this.targetClass"); 018 } 019 020 public ObjectManager getObjectManager() { 021 return objectManager; 022 } 023 024 public MethodInvocationRequest getMethodInvocationRequest() { 025 return methodInvocationRequest; 026 } 027 028 public Class<?> getTargetClass() { 029 return targetClass; 030 } 031}