/** * INTERNAL: Register the session under its name. All of the session's descriptors must have * already been registered. The session should not be connected and descriptors should not be * initialized. Used for client session broker */ public void internalRegisterSession(String name, AbstractSession session) { // Bug#3911318 Removed session brokers and sessions point to the same descriptors. // They don't need to be reassigned. Also the code to add read only classes has been removed // because client broker and server broker point to the same project. session.setIsInBroker(true); getSessionsByName().put(name, session); session.setBroker(this); session.setName(name); /* // The keys/classes must also be used as some descriptors may be under multiple classes. Iterator classes = session.getDescriptors().keySet().iterator(); while (classes.hasNext()) { Class descriptorClass = (Class)classes.next(); getSessionNamesByClass().put(descriptorClass, session); } */ }
/** * PUBLIC: Register the session under its name. All of the session's descriptors must have already * been registered. The session should not be connected and descriptors should not be initialized. */ public void registerSession(String name, AbstractSession session) { session.setIsInBroker(true); getSessionsByName().put(name, session); session.setBroker(this); session.setName(name); // The keys/classes must also be used as some descriptors may be under multiple classes. Iterator descriptors = session.getDescriptors().values().iterator(); Iterator classes = session.getDescriptors().keySet().iterator(); while (descriptors.hasNext()) { ClassDescriptor descriptor = (ClassDescriptor) descriptors.next(); Class descriptorClass = (Class) classes.next(); getSessionNamesByClass().put(descriptorClass, name); getDescriptors().put(descriptorClass, descriptor); } }