All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.github.nill14.utils.init.api.IBeanInjector Maven / Gradle / Ivy

The newest version!
package com.github.nill14.utils.init.api;

import javax.inject.Provider;

import com.google.common.reflect.TypeToken;

/**
 * 
 * Similar as AutowireCapableBeanFactory.autowireBeanProperties(existingBean, autowireMode, dependencyCheck);
 * or {@link com.google.inject.Injector#injectMembers(Object)}
 *
 */
public interface IBeanInjector {
	
	void injectMembers(Object bean);
	
	 T getInstance(Class beanClass);
	
	 T getInstance(TypeToken typeToken);
	
	 T getInstance(BindingKey bindingKey);
	
	 Provider getProvider(Class beanClass);
	
	 Provider getProvider(TypeToken typeToken);
	
	 Provider getProvider(BindingKey bindingKey);
//	
//	 Optional getOptionalInstance(Class beanClass);
//	
//	 Optional getOptionalInstance(TypeToken typeToken);
//	
//	 Optional getOptionalInstance(BindingKey bindingKey);
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy