refactored ComposInvocationHandler