+ public boolean canReuseDependency(final ObjectName objectName, final JmxAttribute jmxAttribute) {
+ Preconditions.checkNotNull(objectName);
+ Preconditions.checkNotNull(jmxAttribute);
+
+ final Module currentModule = resolveModuleInstance(objectName, jmxAttribute);
+ final ModuleIdentifier identifier = currentModule.getIdentifier();
+ final ModuleInternalTransactionalInfo moduleInternalTransactionalInfo = this.modulesHolder
+ .findModuleInternalTransactionalInfo(identifier);
+
+ if (moduleInternalTransactionalInfo.hasOldModule()) {
+ final Module oldModule = moduleInternalTransactionalInfo.getOldInternalInfo().getReadableModule()
+ .getModule();
+ return currentModule.canReuse(oldModule);
+ }
+ return false;
+ }
+
+ @Override
+ public <T extends BaseIdentity> Class<? extends T> resolveIdentity(final IdentityAttributeRef identityRef,
+ final Class<T> expectedBaseClass) {