docs: public static final org.modeshape.jcr.value.PropertyType modePropertyTypeFor( int jcrPropertyType ) {
          // Make sure the value is the correct type ...
          switch (jcrPropertyType) {
              case PropertyType.STRING:
                  return org.modeshape.jcr.value.PropertyType.STRING;
              case PropertyType.BINARY:
                  return org.modeshape.jcr.value.PropertyType.BINARY;
              case PropertyType.BOOLEAN:
                  return org.modeshape.jcr.value.PropertyType.BOOLEAN;
              case PropertyType.DOUBLE:
                  return org.modeshape.jcr.value.PropertyType.DOUBLE;
              case PropertyType.LONG:
                  return org.modeshape.jcr.value.PropertyType.LONG;
              case PropertyType.DATE:
                  return org.modeshape.jcr.value.PropertyType.DATE;
              case PropertyType.DECIMAL:
                  return org.modeshape.jcr.value.PropertyType.DECIMAL;
              case PropertyType.PATH:
                  return org.modeshape.jcr.value.PropertyType.PATH;
              case PropertyType.NAME:
                  return org.modeshape.jcr.value.PropertyType.NAME;
              case PropertyType.REFERENCE:
                  return org.modeshape.jcr.value.PropertyType.REFERENCE;
              case PropertyType.URI:
                  return org.modeshape.jcr.value.PropertyType.URI;
              case PropertyType.WEAKREFERENCE:
                  return org.modeshape.jcr.value.PropertyType.WEAKREFERENCE;
              case org.modeshape.jcr.api.PropertyType.SIMPLE_REFERENCE:
                  return org.modeshape.jcr.value.PropertyType.SIMPLEREFERENCE;
              case PropertyType.UNDEFINED:
                  return org.modeshape.jcr.value.PropertyType.OBJECT;
              default:
                  // All JCR PropertyType values should be explicitly handled above ...
                  throw new SystemFailureException(JcrI18n.invalidPropertyType.text(jcrPropertyType));
          }
      }