code: private static SerializerFactory getInstance() {
      if (instance == null) {
        String className = JacksonSerializerFactory.class.getName();
        try {
          className = System.getProperty(SERIALIZER_FACTORY_CLASS_NAME);
        } catch (Exception e) {
        }
  
        if (className != null) {
          ClassLoader loader = Thread.currentThread().getContextClassLoader();
          try {
            Class<?> clazz = loader.loadClass(className);
            instance = (SerializerFactory) clazz.newInstance();
          } catch (Exception e) {
            throw new IllegalArgumentException("Error instantiating serializer factory.");
          }
        } else {
          instance = new JacksonSerializerFactory();
        }
      }
      return instance;
    }
docs: Gets a singleton serializer factory instance.
  
  @return The current serializer factory instance.