cometd-java/cometd-java-oort/src/main/java/org/cometd/oort/Oort.java
/**
     * <p>Observes the given channel, registering to receive messages from
     * the Oort comets connected to this Oort instance.</p>
     * <p>Once observed, all {@link OortComet} instances subscribe
     * to the channel and will repeat any messages published to
     * the local channel (with loop prevention), so that the
     * messages are distributed to all Oort comet servers.</p>
     *
     * @param channelName the channel to observe
     */
Observes the given channel, registering to receive messages from
the Oort comets connected to this Oort instance.
Once observed, all  OortComet instances subscribe
to the channel and will repeat any messages published to
the local channel (with loop prevention), so that the
messages are distributed to all Oort comet servers.

@param channelName the channel to observe
Observes the given channel registering to receive messages from the Oort comets connected to this Oort instance . Once observed all OortComet instances subscribe to the channel and will repeat any messages published to the local channel ( with loop prevention ) so that the messages are distributed to all Oort comet servers . @param channelName the channel to observe
@ManagedOperation(value = "Observes the given channel", impact = "ACTION")
    public void observeChannel(@Name(value = "channel", description = "The channel to observe") String channelName) {
        if (_logger.isDebugEnabled()) {
            _logger.debug("Observing channel {}", channelName);
        }
        if (!ChannelId.isBroadcast(channelName)) {
            throw new IllegalArgumentException("Channel " + channelName + " cannot be observed because is not a broadcast channel");
        }
        if (_channels.putIfAbsent(channelName, Boolean.TRUE) == null) {
            Set<String> observedChannels = getObservedChannels();
            _membership.observeChannels(observedChannels);
        }
    }
@ ManagedOperation ( value = "Observes the given channel" , impact = "ACTION" ) public void observeChannel ( @ Name ( value = "channel" , description = "The channel to observe" ) String channelName ) { if ( _logger . isDebugEnabled ( ) ) { _logger . debug ( "Observing channel {}" , channelName ) ; } if ( ! ChannelId . isBroadcast ( channelName ) ) { throw new IllegalArgumentException ( "Channel " + channelName + " cannot be observed because is not a broadcast channel" ) ; } if ( _channels . putIfAbsent ( channelName , Boolean . TRUE ) == null ) { Set < String > observedChannels = getObservedChannels ( ) ; _membership . observeChannels ( observedChannels ) ; } }
<p>Observes the given channel, registering to receive messages from
 the Oort comets connected to this Oort instance.</p>
 <p>Once observed, all {@link OortComet} instances subscribe
 to the channel and will repeat any messages published to
 the local channel (with loop prevention), so that the
 messages are distributed to all Oort comet servers.</p>
<p > Observes the given channel registering to receive messages from the Oort comets connected to this Oort instance . < / p > <p > Once observed all { @link OortComet } instances subscribe to the channel and will repeat any messages published to the local channel ( with loop prevention ) so that the messages are distributed to all Oort comet servers . < / p >