package com.vci.server.bof.server.create; import com.vci.corba.common.data.VCIInvocationInfo; import com.vci.corba.omd.data.BusinessObject; import com.vci.server.base.persistence.dao.HibernateSessionFactory; import com.vci.server.bof.server.ServiceFacadeExecuteHelper; import com.vci.server.bof.service.BOFactoryServices; import com.vci.corba.common.VCIError; public class BatchCreateBO extends ServiceFacadeExecuteHelper{ private static ServiceFacadeExecuteHelper instance = null; public static ServiceFacadeExecuteHelper getInstance() { if(instance == null) { instance = new BatchCreateBO(); } return instance; } @Override protected Object doAction() throws Throwable { try { BOFactoryServices services = BOFactoryServices.getInstance(); BusinessObject[] currentBOs = services.batchCreateBusinessObject(params.getBos(), params.isRevision(), params.isNewVersion()); //日志记录 VCIInvocationInfo info = HibernateSessionFactory.getVciSessionInfo(); String ip = "127.0.0.1"; if(info!=null){ ip = info.clientIPInfo == null||"".equals(info.clientIPInfo) ?"127.0.0.1":info.clientIPInfo; } batchRecordLog(currentBOs, ip, "创建"); return currentBOs; } catch (VCIError e) { throw super.getLocalString(e.code, e); } catch (Exception e) { //e.printStackTrace(); //ServerWithLog4j.logger.error(e); throw this.getLocalString("P0010SOF-00001", e); } catch (Throwable t) { //t.printStackTrace(); throw this.getLocalString("P0010SOF-00001", t); } } }