code: @SuppressWarnings("unchecked")
      public static PropertyAccessor getPropertyAccessor(Class<?> clazz)
      {
          PropertyAccessor<?> accessor;
          if (clazz.isEnum())
          {
              accessor = new EnumAccessor();
          }
          else
          {
              accessor = map.get(clazz);
          }
  
          // allow fall-back to Object streamer.
          if (null == accessor)
          {
              if (Enum.class.isAssignableFrom(clazz))
              {
                  accessor = map.get(Enum.class);
              }
              else
              {
                  accessor = map.get(Object.class);
              }
  
          }
          return accessor;
      }
docs: Gets the property accessor.
  
  @param clazz
  the clazz
  
  @return the property accessor