try {
OAR oar = new OAR(artifactURL);
OperationalString[] opstring = oar.loadOperationalStrings();
opStringName = opstring[0].getName();
} catch(Exception e) {
throw new OperationalStringException(String.format("Unable to undeploy, cannot parse/load [%s]",
opStringName));
}
}
boolean undeployed = false;
OpStringManager opMgr = opStringMangerController.getOpStringManager(opStringName);
logger.trace("OpStringManager: {}", opMgr);
if(opMgr == null || (!opMgr.isActive())) {
try {
DeployAdmin dAdmin = opStringMangerController.getPrimaryDeployAdmin(opStringName);
if(dAdmin!=null) {
OperationalStringManager mgr = dAdmin.getOperationalStringManager(opStringName);
if(mgr.isManaging()) {
dAdmin.undeploy(name);
undeployed = true;
}
}
} catch(RemoteException e) {
logger.debug("Communicating to peer during undeployment of [{}]", opStringName, e);
} catch(OperationalStringException e) {
/* ignore */
}
} else {
opStringMangerController.undeploy(opMgr, terminate);
undeployed = true;
}
if(!undeployed) {
throw new OperationalStringException(String.format("No deployment for [%s] found", opStringName));
}
return true;
}