Community
Participate
Working Groups
+++ This bug was initially created as a clone of Bug #159092 +++ DStore currently creates miner ID's on the client by dynamic lookup through MinerClass.getClass().getName(). I think that essentially, the miner ID is already API because if we went and refactored the miner into a different package for 3.0, then a 2.x client would not work against a 3.0 server (unless we provided a compatibility package). Also, the Miner is a server-side item and we should not force client-side dependencies on it. So what I'm saying is: - the miner ID is already API and cannot be changed/refactored without notice - therefore it should also be made explicit - therefore I'd recommend having it in a String constant rather than implicit through MinerClass.getClass().getName(). For instance,
For instance, UniversalProcessMiner.MINER_ID = UniversalProcessMiner.getClass().getName(); UniversalProcessMiner.MINER_ID is the only item from UniversalProcessMiner that's referenced by the client. When that field was moved into a different class or interface (for instance into IUniversalDataStoreConstants), then there were no need to - have the UniversalProcessMiner be public API - load the UniversalProcessMiner class on the client thus saving unnecessary class-loading on the client. The request is not a very important one though.
See also bug 159092 comment 2
I've made and committed the changes to cvs.