code: @Override
  	public void inject(Configuration config) {
  		
  		Set<Field> fields = config.getInjectionTargets(InjectionCategory.POJO);
  		
  		for (Field field : fields) {
  			
  			if(!field.isAccessible()) field.setAccessible(true);
  			
  			try {
  				
  				Class<?> fieldType = field.getType();
  				Class<? extends Object> pojoType = null;
  				
  				if(field.getAnnotation(InjectPojo.class).value().equals(Void.class)) {
  				
  					if(!fieldType.isAnnotationPresent(Pojo.class)) {
  						
  						StringBuilder builder = new StringBuilder()
  						.append("Pojo injection failed on ")
  						.append(field.getName())
  						.append(". Please provide the missing class attribute on @InjectPojo. ")
  						.append(" Or else specify the default implementation using @Pojo on ")
  						.append(fieldType.getName())
  						.append(". ");
  						
  						throw new InjectionException(builder.toString());
  					}
  					
  					pojoType = fieldType.getAnnotation(Pojo.class).value();
  				}
  				else {
  					
  					pojoType = field.getAnnotation(InjectPojo.class).value();
  				}
  				
  				field.set(config.getContext(), pojoType.newInstance());
  			} 
  			catch (Exception e) {
  				
  				Log.e(getClass().getName(), "Injection Failed!", e);
  			}
  		}
  	}
docs: {@inheritDoc}