@@ -0,0 +1,2210 @@
+package org.arquillian.cube.impl.await;%0A%0Aimport java.util.Map;%0Aimport java.util.concurrent.TimeUnit;%0Aimport java.util.logging.Level;%0Aimport java.util.logging.Logger;%0A%0Aimport org.arquillian.cube.spi.Cube;%0A%0Apublic class SleepingAwaitStrategy implements AwaitStrategy %7B%0A%0A    private static final Logger log = Logger.getLogger(SleepingAwaitStrategy.class.getName());%0A%0A    public static final String TAG = %22sleeping%22;%0A    %0A    private static final int DEFAULT_SLEEP_TIME = 500;%0A    private static final TimeUnit DEFAULT_TIME_UNIT = TimeUnit.MILLISECONDS;%0A    private static final String SLEEPING_TIME = %22sleepTime%22;%0A%0A    private int sleepTime = DEFAULT_SLEEP_TIME;%0A    private TimeUnit timeUnit = DEFAULT_TIME_UNIT;%0A    %0A    private Cube cube;%0A%0A    public SleepingAwaitStrategy(Cube cube, Map%3CString, Object%3E params) %7B%0A        this.cube = cube;%0A        if (params.containsKey(SLEEPING_TIME)) %7B%0A            configureSleepingTime(params);%0A        %7D%0A    %7D%0A%0A    private void configureSleepingTime(Map%3CString, Object%3E params) %7B%0A        Object sleepTime = params.get(SLEEPING_TIME);%0A        if(sleepTime instanceof Integer) %7B%0A            this.sleepTime = (Integer) sleepTime;%0A        %7D else %7B%0A            String sleepTimeWithUnit = ((String) sleepTime).trim();%0A            if(sleepTimeWithUnit.endsWith(%22ms%22)) %7B%0A                this.timeUnit = TimeUnit.MILLISECONDS;%0A            %7D else %7B%0A                if(sleepTimeWithUnit.endsWith(%22s%22)) %7B%0A                    this.timeUnit = TimeUnit.SECONDS;%0A                    this.sleepTime = Integer.parseInt(sleepTimeWithUnit.substring(0, sleepTimeWithUnit.indexOf('s')).trim());%0A                %7D else %7B%0A                    this.timeUnit = TimeUnit.MILLISECONDS;%0A                    this.sleepTime = Integer.parseInt(sleepTimeWithUnit.substring(0, sleepTimeWithUnit.indexOf(%22ms%22)).trim());%0A                %7D%0A            %7D%0A        %7D%0A    %7D%0A%0A    public int getSleepTime() %7B%0A        return sleepTime;%0A    %7D%0A%0A    public TimeUnit getTimeUnit() %7B%0A        return timeUnit;%0A    %7D%0A%0A    @Override%0A    public boolean await() %7B%0A    %09try %7B%0A    %09%09timeUnit.sleep(sleepTime);%0A%09%09%7D catch (final InterruptedException e) %7B%0A%09%09%09log.log(Level.WARNING, e.getMessage());%0A%09%09%7D%0A        return true;%0A    %7D%0A%7D%0A

Create an static time await