Project

General

Profile

Feature #5142

Updated by Rob Nahf almost 10 years ago

Member Nodes want to be able to choose which environment they will register in without shutting down to do so.

In the D1Clieint class, there is a static class field CNode. After the CNode was initialized, there is no way to change the CN:

<pre>
public static CNode getCN(Session session) throws ServiceFailure {
if (cn == null) {
// get the CN URL
String cnUrl = Settings.getConfiguration().getString("D1Client.CN_URL");

// determine which implementation to instantiate
String cnClassName = Settings.getConfiguration().getString("D1Client.cnClassName");

if (cnClassName != null) {
// construct it using reflection
try {
cn = (CNode) Class.forName(cnClassName).newInstance();
} catch (Exception e) {
throw D1Node.recastClientSideExceptionToServiceFailure(e);

}
cn.setNodeBaseServiceUrl(cnUrl);
} else {
// default
cn = new CNode(cnUrl, session);
}
}
return cn;
}
</pre>

Back

Add picture from clipboard (Maximum size: 14.8 MB)