* @throws GBeanAlreadyExistsException if there is already a GBean registered with the instance's name
*/
public synchronized void register(GBeanInstance gbeanInstance) throws GBeanAlreadyExistsException {
ObjectName name = normalizeObjectName(gbeanInstance.getObjectNameObject());
if (objectNameRegistry.containsKey(name)) {
throw new GBeanAlreadyExistsException("Cannot register GBean with abstract name: " + gbeanInstance.getAbstractName() + ", GBean with abstract name: " + objectNameRegistry.get(name).getAbstractName() + " already registered under ObjectName: " + name);
}
objectNameRegistry.put(name, gbeanInstance);
infoRegistry.put(gbeanInstance.getAbstractName(), gbeanInstance);
gbeanInstance.setInstanceRegistry(this);
}