WatchedRequest create( final String serviceId, final String request ) { final String key = getKey( serviceId, request ); final Long timeout = keyToMillis.get( key ); if ( timeout != null ) { long startTimeInMillis = System.currentTimeMillis(); long stopTimeInMillis = startTimeInMillis + timeout; return new WatchedRequest( Thread.currentThread(), stopTimeInMillis, startTimeInMillis, serviceId, request ); } return null; }