code: @Override
      public Object readValue(final Attribute _attribute,
                              final List<Object> _objectList)
          throws CacheReloadException
      {
          final Object ret;
          if (!_attribute.getSqlColNames().isEmpty()) {
              if (_objectList.size() < 1) {
                  ret = null;
              } else {
                  final Object object = _objectList.get(0);
                  Object temp = null;
                  // Oracle database stores all IDs as Decimal
                  if (object instanceof BigDecimal) {
                      temp = ((BigDecimal) object).longValue();
                  } else {
                      temp = object;
                  }
                  ret = Type.get((Long) temp);
              }
          } else {
              ret = _attribute.getParent();
          }
          return ret;
      }
docs: {@inheritDoc}