@Praveen I thought about going this route. I couldn't convince myself that webport was important enough info to make it into the ServerName fundamental type (its used everywhere, in fs and persisted to zk, serialized over rpc) and truth be told, I punted on what to do about it; thanks for raising it again.
So I still think having webui port in the servername is not the right place for it.
What about adding webui param to HMasterRegionInterface#regionServerStartup?
Pass it through to ServerManager.
OnlineServers is ServerName->HServerLoad Map. Maybe the value needs to change to be a datastructure that has HSL and webui? That would be pretty disruptive? Perhaps a new ServerInfo or ServerVitals that has HSL and webui? Maybe later we'll add more 'server info' to this data structure?
I'd almost be ok with a new map of SN->webui that sat beside the onlineServers and was expired when onlineServer expired........
Sorry if this is more than you bargained for.