public static RestrictionType allowedByTimeRestrictions(String allowedTimeString,
            String deniedTimeString) {
        
        // Check for denied entries, first, returning the explicit deny if the
        // login or connection should not be allowed.
        if (deniedTimeString != null && !deniedTimeString.isEmpty()) {
            List<DailyRestriction> deniedTimes = 
                    TimeRestrictionParser.parseString(deniedTimeString);

            for (DailyRestriction restriction : deniedTimes) {
                if (restriction.appliesNow())
                    return RestrictionType.EXPLICIT_DENY;
            }
        }
        
        // If no allowed entries are present, return the implicit allow, allowing
        // the login or connection to continue.
        if (allowedTimeString == null || allowedTimeString.isEmpty())
            return RestrictionType.IMPLICIT_ALLOW;
        
        // Pull the list of allowed times.
        List<DailyRestriction> allowedTimes = 
                TimeRestrictionParser.parseString(allowedTimeString);
        
        // Allowed entries are present, loop through them and check for a valid time.
        for (DailyRestriction restriction : allowedTimes) {
            // If this time allows the login or connection return the explicit allow.
            if (restriction.appliesNow())
                return RestrictionType.EXPLICIT_ALLOW;
        }
        
        // We have allowed entries, but login hasn't matched, so implicitly deny it.
        return RestrictionType.IMPLICIT_DENY;
        
    }
Parse out the provided strings of allowed and denied times, verifying
whether or not a login or connection should be allowed at the current
day and time, and returning the appropriate restriction type.

@param allowedTimeString
    The string containing the times that should be parsed to determine if
    the login or connection should be allowed at the current time, or
    null or an empty string if there are no specific allowed times defined.

@param deniedTimeString
    The string containing the times that should be parsed to determine if
    the login or connection should be denied at the current time, or null
    or an empty string if there are no specific times during which a
    action should be denied.

@return
    A RestrictionType based on the provided allowed and denied strings.
extensions/guacamole-auth-restrict/src/main/java/org/apache/guacamole/auth/restrict/RestrictionVerificationService.java