public void Intercept(IInvocation invocation)
    {
        var method    = invocation.GetImplementationMethod();
        var attribute = method.GetCustomAttribute <MyCacheAttribute>();

        if (attribute == null)
        {
            // Calls the decorated instance.
            invocation.Proceed();
        }
        else
        {
            // caching here
        }
    }