package info.u_team.u_team_core.integration;

import org.apache.logging.log4j.*;
import org.objectweb.asm.Type;

import info.u_team.u_team_core.api.integration.*;
import info.u_team.u_team_core.util.AnnotationUtil;
import net.minecraftforge.fml.ModList;
import net.minecraftforge.forgespi.language.ModFileScanData.AnnotationData;

public class IntegrationManager {
	
	private static final Logger LOGGER = LogManager.getLogger("IntegrationManager");
	
	public static void constructIntegrations(String modid) {
		final Type type = Type.getType(Integration.class);
		
		for (AnnotationData data : AnnotationUtil.getAnnotations(modid, type)) {
			final String integrationModid = (String) data.getAnnotationData().get("value");
			if (ModList.get().isLoaded(integrationModid)) {
				LOGGER.info("Try to load " + integrationModid + " integration for mod " + modid);
				try {
					Class.forName(data.getMemberName()).asSubclass(IModIntegration.class).newInstance().construct();
				} catch (LinkageError | ClassNotFoundException | InstantiationException | IllegalAccessException | ClassCastException ex) {
					LOGGER.error("Failed to load and construct integration : {}", data.getMemberName(), ex);
					throw new RuntimeException(ex);
				}
			}
		}
	}
}

@@ -506,64 +506,8 @@
 ) %7B%0A
-%09%09final Type type = Type.getType(Integration.class);%0A%09%09%0A
 %09%09fo
@@ -572,12 +572,39 @@
 id, 
-type
+Type.getType(Integration.class)
 )) %7B

Remove unused local variable