public boolean isAccessPermitted(ClientAppInfo appInfo) { Integer restrictedRuleCount = _managedAppsMap.get(appInfo); boolean result = false; if (restrictedRuleCount != null) { result = (restrictedRuleCount == 0); } else { Logger.w(TAG, appInfo.getIndexingKey() + " is NOT managed by this category."); } return result; }
public void adjustRestrictedRuleCount(ClientAppInfo appInfo, int delta) { if (appInfo == null || delta == 0) return; if (_managedAppsMap.containsKey(appInfo) == false) { Logger.w(TAG, "_managedAppsMap NOT contains AppInfo: " + appInfo.getAppName()); } synchronized (_managedAppsMap) { Integer oldCnt = _managedAppsMap.get(appInfo); Integer newCnt = oldCnt + delta; if (newCnt < 0) { newCnt = 0; } Logger.v( TAG, "Putting counter " + newCnt + " to _managedAppsMap for AppInfo: " + appInfo.getAppName()); _managedAppsMap.put(appInfo, newCnt); } }
public void removeManagedApp(ClientAppInfo appInfo) { if (appInfo != null) { synchronized (_managedAppsMap) { if (null == _managedAppsMap.remove(appInfo)) { Logger.w(TAG, "_managedAppsMap return NULL for AppInfo " + appInfo.getAppClassname()); } } } else { Logger.w(TAG, "Input parameter ClientAppInfo is NULL!"); } }
@Override public String toString() { StringBuffer buff = new StringBuffer(); buff.append("\nCate ID: " + _id).append("\tCate Name: " + _name); for (AccessRule rule : _rulesList) { buff.append("\nRule auth type: " + rule.getAccessType()) .append("\nRule recur type: " + rule.getRecurrence().getName()) .append("\tRecur value: " + rule.getRecurrence().getRecurValue()); for (TimeRange tr : rule.getTimeRangeList()) { buff.append("\nStart Time: " + tr.getStartTime().toString()) .append("\tEnd Time: " + tr.getEndTime().toString()); } } for (ClientAppInfo appInfo : _managedAppsMap.keySet()) { buff.append("\nManaged App: " + appInfo.getAppName()) .append(", " + appInfo.getAppPkgname()) .append(", " + appInfo.getAppClassname()); } return buff.toString(); }