* @param scopes The scopes this event should be fired against
*/
void fireEvent(final EventContext context, final Name name, final Binding existingBinding, final Binding newBinding, int type, final String changeInfo, final Integer... scopes) {
final String target = name.toString();
final Set<Integer> scopeSet = new HashSet<Integer>(Arrays.asList(scopes));
final NamingEvent event = new NamingEvent(context, type, newBinding, existingBinding, changeInfo);
final Set<ListenerHolder> holdersToFire = new HashSet<ListenerHolder>();
// Check for OBJECT_SCOPE based listeners
if (scopeSet.contains(EventContext.OBJECT_SCOPE)) {