docs: @Override
    public final IEntityProcessor lazyGet(
      final Map<String, Object> pAddParam,
        final String pBeanName) throws Exception {
      IEntityProcessor proc =
        this.processorsMap.get(pBeanName);
      if (proc == null) {
        // locking:
        synchronized (this.processorsMap) {
          // make sure again whether it's null after locking:
          proc = this.processorsMap.get(pBeanName);
          if (proc == null) {
            if (pBeanName
              .equals(PrcEntityRetrieve.class.getSimpleName())) {
              proc = createPutPrcEntityRetrieve();
            } else if (pBeanName
              .equals(PrcMatchForeignLineCreate.class.getSimpleName())) {
              proc = createPutPrcMatchForeignLineCreate();
            } else if (pBeanName
              .equals(PrcCsvColumnCreate.class.getSimpleName())) {
              proc = createPutPrcCsvColumnCreate();
            } else if (pBeanName
              .equals(PrcEntityCreate.class.getSimpleName())) {
              proc = createPutPrcEntityCreate();
            } else if (pBeanName
              .equals(PrcEntityDelete.class.getSimpleName())) {
              proc = createPutPrcEntityDelete();
            } else if (pBeanName
              .equals(PrcEntityPbDelete.class.getSimpleName())) {
              proc = createPutPrcEntityPbDelete();
            } else if (pBeanName
              .equals(PrcEntityFDelete.class.getSimpleName())) {
              proc = createPutPrcEntityFDelete();
            } else if (pBeanName
              .equals(PrcEntityFSave.class.getSimpleName())) {
              proc = createPutPrcEntityFSave();
            } else if (pBeanName
              .equals(PrcEntityFfolDelete.class.getSimpleName())) {
              proc = createPutPrcEntityFfolDelete();
            } else if (pBeanName
              .equals(PrcEntityFfolSave.class.getSimpleName())) {
              proc = createPutPrcEntityFfolSave();
            } else if (pBeanName
              .equals(PrcEntityFolDelete.class.getSimpleName())) {
              proc = createPutPrcEntityFolDelete();
            } else if (pBeanName
              .equals(PrcEntityFolSave.class.getSimpleName())) {
              proc = createPutPrcEntityFolSave();
            } else if (pBeanName
              .equals(PrcEntityPbCopy.class.getSimpleName())) {
              proc = createPutPrcEntityPbCopy();
            } else if (pBeanName
              .equals(PrcEntityCopy.class.getSimpleName())) {
              proc = createPutPrcEntityCopy();
            } else if (pBeanName
              .equals(PrcEntityPbSave.class.getSimpleName())) {
              proc = createPutPrcEntityPbSave();
            } else if (pBeanName
              .equals(PrcEntityPbEditDelete.class.getSimpleName())) {
              proc = createPutPrcEntityPbEditDelete();
            } else if (pBeanName
              .equals(PrcEmailMsgSave.class.getSimpleName())) {
              proc = createPutPrcEmailMsgSave();
            } else if (pBeanName
              .equals(PrcEntitySave.class.getSimpleName())) {
              proc = createPutPrcEntitySave();
            }
          }
        }
      }
      if (!this.isItSubfactory && proc == null) {
        throw new ExceptionWithCode(ExceptionWithCode.CONFIGURATION_MISTAKE,
          "There is no entity processor with name " + pBeanName);
      }
      return proc;
    }