code: public Object getVal(long waitTime, TimeUnit timeUnit)
  			throws InterruptedException
  	{
  		if(latch.await(waitTime, timeUnit)){
  			return val;
  		}
  		else
  		{
  			return null;
  		}
  	}
docs: This method blocks for a specified amount of time to retrieve the value
  bound in bind method.
  
  @param waitTime
  the amount of time to wait
  @param timeUnit
  the unit, milliseconds, seconds etc.
  @return Returns the bound value or null if the time out has exceeded.
  @throws InterruptedException