public void setShutdown(Object o, Shutdown shutdown) { if (shutdownAwareClass.isAssignableFrom(o.getClass())) { for (Enum e : shutdownClass.getEnumConstants()) { if (shutdown.ordinal() == e.ordinal()) { invokeSetter(o, "setShutdown", shutdownClass, e); break; } } } }