docs: private int checkSecurity(String strClassResource, String strSecurityMap, int iAccessType, int iLevel)
      {
          int iAccessAllowed = Constants.ACCESS_DENIED;
  
          if (strSecurityMap == null)
              return iAccessAllowed;  // Denied
          if (LOGIN_REQUIRED.equalsIgnoreCase(strSecurityMap))
              return Constants.LOGIN_REQUIRED;  // Denied
          if (CREATE_USER_REQUIRED.equalsIgnoreCase(strSecurityMap))
              return Constants.CREATE_USER_REQUIRED;  // Denied
      	int startThin = strClassResource.indexOf(Constants.THIN_SUBPACKAGE, 0);
      	if (startThin != -1)	// Remove the ".thin" reference
      		strClassResource = strClassResource.substring(0, startThin) + strClassResource.substring(startThin + Constants.THIN_SUBPACKAGE.length());
          
          if (this.classMatch(strClassResource, BASE_CLASS))
              return Constants.NORMAL_RETURN;   // Allow access to all base classes
          StringTokenizer tokenizer = new StringTokenizer(strSecurityMap, TOKENS);
          try {
              while (tokenizer.hasMoreTokens())
              {
                  String strClass = tokenizer.nextToken();
                  String strAccess = tokenizer.nextToken();
                  int iClassAccessType = Constants.READ_ACCESS;
                  iClassAccessType = Integer.parseInt(strAccess);
                  String strLevel = tokenizer.nextToken();
                  int iClassLevel = Constants.LOGIN_USER;
                  iClassLevel = Integer.parseInt(strLevel);
                  
                  if (this.classMatch(strClassResource, strClass))
                      if (iAccessType <= iClassAccessType)
                          if (iLevel >= iClassLevel)
                  {
                      iAccessAllowed = Constants.NORMAL_RETURN;
                  }
              }
          } catch (NoSuchElementException ex) {
              // Done
          } catch (NumberFormatException ex) {
              ex.printStackTrace();
          }
          
          if (("1"/*DBConstants.ANON_USER_ID*/.equals(this.getProperty(Params.USER_ID)))
                  || (this.getProperty(Params.USER_ID) == null))
              if (iAccessAllowed == Constants.ACCESS_DENIED)
                  iAccessAllowed = Constants.LOGIN_REQUIRED;  // For anonymous access, logging in will always get you more
          
          return iAccessAllowed;
      }