文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>NBI CM CORE MSC PERL 编程模本

NBI CM CORE MSC PERL 编程模本

时间:2008-08-25  来源:sohu2000000

模本一:  文件解析  

        #find the command of "C7SPP:SP=ALL"
        if($line =~ /^<c7spp:sp=all;/i ){#print "88\n";
            #find the next line
            while($line=<dataFileHandle>){
                #find the matching line

                if($line=~/^(\d+)-(\d+)\s+OWNSP\s+(\S+)/){
                    $mtpSignPointId14 = $1."-".$2;
                    $userLabel14=$3;
                    $networkIndicator14=$1;
                    $pointCode14=$2;
                    $pointCodeLength14=1;
                    next;    
                }
                #find the matching line

                if($line=~/^(\d+)-(\d+)-(\d+)-(\d+)\s+OWNSP\s+(\S+)/){
                    $mtpSignPointId24 = $1."-".$2."-".$3."-".$4;
                    $userLabel24=$5;
                    $networkIndicator24=$1;
                    $pointCode24=$4;
                    $pointCodeLength24=0;
                    next;    
                }
                #if the line in which has "END", the loop will break

                if($line=~/^END/){
                    last;
                }                            
            }
        }

 

模本二: 文件读取

    my($line);
    #open the source file,if failed to open ,it will give a note

        open(dataFileHandle, $outFile)|| die "can not open data file: $outFile";
        #find from the first line

        while ( $line=<dataFileHandle>)
        {
            

 

模本三: 变量声明

my($hlr,$hlrId, $dn, $outFile,$exportFile);
my($hlrNumber, $hlrCapacity, $controlledRncList,$maxNum2MPort);
my($num2MCircuits,$maxNum155MPort,$num155MCircuits,$relatedIwf,$administrativeState);
my($operationalState,$mccList,$mncList,$hlrId);
my(%supportedServicesComplex,@supportedServicesList,$supportedServicesNum,$supportedServices);
my($i ,$j,$maxNumImsi,$administrativeState,$operationalState);
my($mtpSignPoint,$mtpSignPointId,$pointCode, $networkIndicator, $pointCodeLength);
my(@signLinkSetTp,$signLinkSetTpNum, $signLinkSetTpDN,@adjPc,$maxCapacityLS);
my(@signLinkTp,$signLinkTpDN,@linkStateList,@slcList,@linkTpStatusList);
my(@signRouteSetNePart, @destList ,@lshbList, $signRouteSetNePartNum);
my($signRouteSetNeTpDN, @signRouteNePart, $signRouteNePartDN,$signRouteNePartNum,@prioList, @lsList);
my($ManagedIdDN);
my($mtpSignPointId14,$pointCode14, $networkIndicator14, $pointCodeLength14);
my($mtpSignPointId24,$pointCode24, $networkIndicator24, $pointCodeLength24);
my($signLinkSetTpDN14,$signLinkSetTpDN24,$maxCapacityLS);
my(@LS24,$spid24,%signLinkSetTp24,%adjPc24,$signLinkSetTp24Num,@signLinkSetTp24Id,$signLinkSetTp24IdNum,@adjPc14List);
my(@LS14,$spid14,%signLinkSetTp14,%adjPc14, $signLinkSetTp14Num,@signLinkSetTp14Id,$signLinkSetTp14IdNum,@adjPc24List);
my($mtpSignPoint14,$mtpSignPoint24,%signLinkTp14,%signLinkTp24,%slc14,%slc24, %linkState14,%linkState24, %linkTpStatus14,%linkTpStatus24);
my($signLinkTpDN14,$signLinkTpDN24,%signLinkTp14,%signLinkTp24);
my(@linkState14List,@linkState24List,@linkTpStatus14List,@linkTpStatus24List);
my($signRouteSetNePart24Num, $signRouteSetNePart14Num);
my(@dest14,@dest24,$spidRoute14,$spidRoute24,%signRouteSetNePart14,%signRouteSetNePart24,%signRouteNePart14,%signRouteNePart24);
my(%destList14, %destList24, %prioList14,%prioList24, %lshbList14,%lshbList24,%lsList14,%lsList24);
my($signRouteSetNeTpDN14,$signRouteSetNeTpDN24);
my($signRouteNePartNum14,$signRouteNePartNum24,@signRouteNePart14List,@signRouteNePart24List);
my(@lsList14List,@lsList24List,@prioList14List,@prioList24List);
my($signRouteNePartDN24,$signRouteNePartDN14);
my($signRouteSetNePartNum24,$signRouteSetNePartNum14);
my($SLC,@signLinkTp14Id,@signLinkTp24Id,$signLinkTp14IdNum,$signLinkTp24IdNum);
my($z,$linenew);
my($userLabel14,$userLabel24);
my($spType);
my($maxNumPdpAddress);
my(@linkTpStatus24new,@linkTpStatus14new);
my(@slcode14,@slcode24);

模本四:映射XML文件

    for($j=0; $j<$signLinkSetTp24Num; $j++){
        $signLinkSetTp24IdNum=0;
        @signLinkSetTp24Id=0;
        @adjPc24List=0;
        @signLinkSetTp24Id=split(/,/,$signLinkSetTp24{$LS24[$j]});
        $signLinkSetTp24IdNum=@signLinkSetTp24Id;
        @signLinkTp24Id=split(/,/,$signLinkTp24{$LS24[$j]});
        $signLinkTp24IdNum=@signLinkTp24Id;
        $maxCapacityLS=0.5*64000*$signLinkTp24IdNum;
        @linkState24List=split(/,/,$linkState24{$LS24[$j]});
        @linkTpStatus24List=split(/,/,$linkTpStatus24{$LS24[$j]});
        @slcode24=split(/,/,$slc24{$LS24[$j]});
        $signLinkSetTpDN24=$mtpSignPoint24.",SignLinkSetTp=".$signLinkSetTp24{$LS24[$j]};
        print exportFileHandle "<OneNE>\n";
        print exportFileHandle "<DN>$signLinkSetTpDN24</DN>\n";
        print exportFileHandle "\t<Attributes>\n";
        print exportFileHandle "\t\t<name>signLinkSetTpId</name>\n";
        print exportFileHandle "\t\t<value>$mtpSignPointId24:$signLinkSetTp24{$LS24[$j]}</value>\n";
        print exportFileHandle "\t\t<name>userLabel</name>\n";
        print exportFileHandle "\t\t<value>$signLinkSetTp24{$LS24[$j]}</value>\n";
        print exportFileHandle "\t\t<name>adjPc</name>\n";
        print exportFileHandle "\t\t<value>$adjPc24{$LS24[$j]}</value>\n";
        print exportFileHandle "\t\t<name>maxCapacityLS</name>\n";
        print exportFileHandle "\t\t<value>$maxCapacityLS</value>\n";
        print exportFileHandle "\t</Attributes>\n";
        print exportFileHandle "</OneNE>\n";
        for($z=0; $z<$signLinkTp24IdNum; $z++){    
            $signLinkTpDN24=$signLinkSetTpDN24.",SignLinkTp=".$signLinkTp24Id[$z];
            print exportFileHandle "<OneNE>\n";
            print exportFileHandle "<DN>$signLinkTpDN24</DN>\n";
            print exportFileHandle "\t<Attributes>\n";
            print exportFileHandle "\t\t<name>signLinkTpId</name>\n";
            print exportFileHandle "\t\t<value>$signLinkTp24Id[$z]</value>\n";
            print exportFileHandle "\t\t<name>userLabel</name>\n";
            print exportFileHandle "\t\t<value>$signLinkTp24Id[$z]</value>\n";
            print exportFileHandle "\t\t<name>administrativeState</name>\n";
            print exportFileHandle "\t\t<value>$linkState24List[$z]</value>\n";
            print exportFileHandle "\t\t<name>operationalState</name>\n";
            print exportFileHandle "\t\t<value>$linkState24List[$z]</value>\n";
            print exportFileHandle "\t\t<name>slCode</name>\n";
            print exportFileHandle "\t\t<value>$slcode24[$z]</value>\n";
            print exportFileHandle "\t\t<name>linkTpStatus</name>\n";
            print exportFileHandle "\t\t<value>$linkTpStatus24List[$z]</value>\n";
            print exportFileHandle "\t\t<name>maxCapacitySL</name>\n";
            print exportFileHandle "\t\t<value>$maxCapacityLS</value>\n";
            foreach $STkey (keys %ST){
                print "$ST{$STkey}\n";
                if ($STkey eq $signLinkTp24Id[$z]){
                    print exportFileHandle "\t\t<name>timeSlot</name>\n";
                    print exportFileHandle "\t\t<value>$timeslot{$ST{$STkey}}</value>\n";         
                }
            }
            print exportFileHandle "\t</Attributes>\n";
            print exportFileHandle "</OneNE>\n";
        }
    }

相关阅读 更多 +
排行榜 更多 +
别惹神枪手安卓版

别惹神枪手安卓版

冒险解谜 下载
坦克战争世界

坦克战争世界

模拟经营 下载
丛林反击战

丛林反击战

飞行射击 下载