@Override
            public ReplicationTask create(HCatClient client, HCatNotificationEvent event) {
              throw new IllegalStateException("Error instantiating ReplicationTask.Factory " +
                  HiveConf.ConfVars.HIVE_REPL_TASK_FACTORY.varname+"="+factoryClassName +
                  ". Call resetFactory() if you need to reset to a valid one.");
            }
Create factory instance for instantiating ReplicationTasks.

The order precedence is as follows:

a) If a factory has already been instantiated, and is valid, use it.
b) If a factoryClassName has been provided, through .resetFactory(), attempt to instantiate that.
c) If a hive.repl.task.factory has been set in the default hive conf, use that.
d) If none of the above methods work, instantiate an anonymous factory that will return an error
   whenever called, till a user calls resetFactory.
hcatalog/webhcat/java-client/src/main/java/org/apache/hive/hcatalog/api/repl/ReplicationTask.java