私有方法十三

/**
     * @author : lKF35745
     * @version: 1.0
     * <p>时间 : 2011-1-22</p>
     * <p>描述 : DstSrceen选看下级视频选看</p>
     * <p>Copyright 1988-2005, Huawei Tech. Co., Ltd.</p>
     * @param cascadeTopoTree 
     * @param cascadeConference
     * @param videoConferenceMode
     */
    private void sendNorthVideoSelection(CascadeTopoTree cascadeTopoTree,
            CascadeConference cascadeConference, String dstScreenConferID,
            String srcScreenConferenceID, VideoSelectionParam videoParam)
    {
        if (logger.isDebugEnabled())
        {
            logger.debug("begin to sendNorthVideoSelection");
        }
        
        //得到SrcScreen 的所有上级会议ID
        List<String> srcSrceenConferID = getDstScreenParentConferID(
                cascadeTopoTree, srcScreenConferenceID);
        if (null == srcSrceenConferID)
        {
            logger.warn("get srcSrceenConferID is null");
            return;
        }
        
        //SrcScreen至DstScreen会议ID
        List<String> srcSrceenUpperConferID = getParentConferId(
                srcSrceenConferID, dstScreenConferID);
        if (null == srcSrceenUpperConferID)
        {
            logger.warn("get srcSrceenUpperConferID is null");
            return;
        }
        
         boolean hasChariMan = isChairManByDstScreenID(videoParam
                .getCascadeDstScreen());
        
        List<Channel> paramChannelList = new ArrayList<Channel>();
        
        List<ChannelGroup> srcSrceenUpperChannelGroup = ChannelGroup
                .findChannelGroupByConferenceID(srcSrceenUpperConferID,
                        cascadeConference);
        if (null == srcSrceenUpperChannelGroup)
        {
            logger.warn("get srcSrceenUpperChannelGroup is null");
            return;
        }
        
        //获取SrcScreen级联通道
        List<Channel> srcScreenChannel = Channel.findChannel(
                srcSrceenUpperChannelGroup, NORTH, hasChariMan,
                paramChannelList);
        
        if (null == srcScreenChannel)
        {
            logger.warn("get srcScreenChannel is null");
            return;
        }
        
        List<ParticipantID> srcScreenPorat = Channel.findChannelPorat(
                srcScreenChannel, NORTH);
        if (null == srcScreenPorat)
        {
            logger.warn("get srcScreenPorat is null");
            return;
        }
        
        List<ParticipantID> reversalPorat = new ArrayList<ParticipantID>();
        
        //先添加SrcScreen ID
        reversalPorat.add(videoParam.getCascadeSrcScreen());
        
        if (srcScreenPorat.size() > 0)
        {
            for (int i = 0; i < srcScreenPorat.size(); i++)
            {
                reversalPorat.add(srcScreenPorat.get(i));
            }
        }
        
        //DstSrceen最后一个添加
        reversalPorat.add(videoParam.getCascadeDstScreen());
        
        sendSetVideoSelection(reversalPorat, srcSrceenUpperConferID);
        
        if (logger.isDebugEnabled())
        {
            logger.debug("end to sendNorthVideoSelection");
        }
        
    }

 

你可能感兴趣的:(方法)