inputStream.close();
}
} catch (Exception e) {
String errmsg = "The process " + _pid + " is no longer available.";
__log.error(errmsg, e);
throw new BpelEngineException(errmsg, e);
}
if (_partnerRoles == null) {
_partnerRoles = new HashMap<OPartnerLink, PartnerLinkPartnerRoleImpl>();
}
if (_myRoles == null) {
_myRoles = new HashMap<OPartnerLink, PartnerLinkMyRoleImpl>();
}
if (_endpointToMyRoleMap == null) {
_endpointToMyRoleMap = new HashMap<PartnerLinkMyRoleImpl, Endpoint>();
}
if (_myEprs == null) {
_myEprs = new HashMap<Endpoint, EndpointReference>();
}
if (_partnerChannels == null) {
_partnerChannels = new HashMap<Endpoint, PartnerRoleChannel>();
}
if (_partnerEprs == null) {
_partnerEprs = new HashMap<Endpoint, EndpointReference>();
}
_replacementMap = new ReplacementMapImpl(_oprocess);
setExtensionRegistry(_engine._contexts.extensionRegistry);
setFilterRegistry(_engine._contexts.correlationFilterRegistry);
// Checking for registered extension bundles, throw an exception when
// a "mustUnderstand" extension is not available
_mustUnderstandExtensions = new HashSet<String>();
for (OProcess.OExtension extension : _oprocess.declaredExtensions) {
if (extension.mustUnderstand) {
if (_extensionRegistry.get(extension.namespaceURI) == null) {
String msg = __msgs.msgExtensionMustUnderstandError(_pconf.getProcessId(), extension.namespaceURI);
__log.error(msg);
throw new BpelEngineException(msg);
} else {
_mustUnderstandExtensions.add(extension.namespaceURI);
}
} else {
__log.warn("The process declares the extension namespace " + extension.namespaceURI