code: public static Status getStatus(final Instance _instance)
          throws EFapsException
      {
          Evaluation.LOG.debug("Retrieving Status for {}", _instance);
          long statusId = 0;
          if (_instance.getType().isCheckStatus()) {
              final Cache<String, Long> cache = AccessCache.getStatusCache();
              if (cache.containsKey(_instance.getKey())) {
                  statusId = cache.get(_instance.getKey());
              } else {
                  final PrintQuery print = new PrintQuery(_instance);
                  print.addAttribute(_instance.getType().getStatusAttribute());
                  print.executeWithoutAccessCheck();
                  final Long statusIdTmp = print.getAttribute(_instance.getType().getStatusAttribute());
                  statusId = statusIdTmp == null ? 0 : statusIdTmp;
                  cache.put(_instance.getKey(), statusId);
              }
          }
          final Status ret = statusId > 0 ? Status.get(statusId) : null;
          Evaluation.LOG.debug("Retrieve Status: {}", ret);
          return ret;
      }
docs: Gets the status.
  
  @param _instance the instance
  @return the status
  @throws EFapsException on error