After stopping the BO processes, making a backup, and then starting the BO processes, how do we know when the Enterprise CMS is available for XI R2?
Once you can log onto the CMS, it is ready to use. To check CMS availability in code, setup a loop, with a short delay, repeatedly to try logging into it until it either succeeds or you've exceeded some maximum number of retries.
Since you can't interact with the CMS without first logging into it, any calls that would return the CMS' readiness would require you to be logged in before you could call it.
Attached is the sample Java_Enterprise_BE115_Wait_for_CMS that demonstrates this technique.
java api sdk cms enterprise logon test check ready reboot up started login available , KBA , BI-DEV-JAV , BI Software Development Kits (SDKs) - Java , How To