package com.vci.server.omd.versionrule.delegate;
|
|
import com.vci.common.exception.VciExceptionTool;
|
import com.vci.corba.common.VCIError;
|
import com.vci.corba.omd.vrm.VersionRule;
|
import com.vci.server.base.exception.ExceptionLocalHandler;
|
import com.vci.server.cache.OMCacheProvider;
|
import com.vci.server.omd.versionrule.cache.VRServerCacheUtil;
|
import com.vci.server.omd.versionrule.service.VRService;
|
|
public class VRServerDelegate implements IVRServerDelegate {
|
|
private static VRServerDelegate instance = null;
|
|
private VRServerDelegate() {
|
|
}
|
|
public static VRServerDelegate getInstance() {
|
if (instance == null) {
|
instance = new VRServerDelegate();
|
}
|
|
return instance;
|
}
|
|
protected VCIError getLocalVciError(String key, Throwable e) {
|
VCIError error = new VCIError(key, new String[]{VciExceptionTool.getExceptionStr(e), VciExceptionTool.getExceptionDetail(e)});
|
VCIError rsError = ExceptionLocalHandler.getInstance().getLocalString(error, "PLMVERSION");
|
return rsError;
|
}
|
|
@Override
|
public VersionRule[] getVersionRules() throws VCIError {
|
return OMCacheProvider.getVersionRules();
|
}
|
|
@Override
|
public VersionRule getVersionRule(String name) throws VCIError {
|
return OMCacheProvider.getVersionRule(name);
|
}
|
|
@Override
|
public boolean addVersionRule(VersionRule vr) throws VCIError {
|
try{
|
boolean success = VRService.getInstance().addVersionRule(vr);
|
if (success) {
|
VRServerCacheUtil.setVersionRule(vr);
|
}
|
|
return success;
|
}catch(Throwable e){
|
e.printStackTrace();
|
throw getLocalVciError("P0010VERSION-00001", e);
|
}
|
}
|
|
@Override
|
public boolean modifyVersionRule(VersionRule vr) throws VCIError {
|
try{
|
boolean success = VRService.getInstance().modifyVersionRule(vr);
|
if (success) {
|
VRServerCacheUtil.setVersionRule(vr);
|
}
|
|
return success;
|
}catch(Throwable e){
|
e.printStackTrace();
|
throw getLocalVciError("P0010VERSION-00002", e);
|
}
|
}
|
|
@Override
|
public boolean deleteVersionRule(VersionRule vr) throws VCIError {
|
try{
|
boolean success = VRService.getInstance().deleteVersionRule(vr);
|
if (success) {
|
VRServerCacheUtil.delVersionRule(vr.name);
|
}
|
|
return success;
|
}catch(Throwable e){
|
e.printStackTrace();
|
throw getLocalVciError("P0010VERSION-00003", e);
|
}
|
}
|
|
@Override
|
public boolean deleteVersionRules(VersionRule[] vrs) throws VCIError {
|
try{
|
boolean success = VRService.getInstance().deleteVersionRules(vrs);
|
if (success) {
|
for (VersionRule vr : vrs) {
|
VRServerCacheUtil.delVersionRule(vr.name);
|
}
|
}
|
|
return success;
|
}catch(Throwable e){
|
e.printStackTrace();
|
throw getLocalVciError("P0010VERSION-00003", e);
|
}
|
}
|
|
@Override
|
public boolean xml2DB(String userName) throws VCIError {
|
return VRService.getInstance().xml2DB(userName);
|
}
|
|
}
|