@@ -49,11 +49,21 @@ private void readConf() {
4949 String value = ConfigurationManager . AppSettings [ key ] ;
5050 if ( key != "token" )
5151 {
52+ // <!--key= servicename, value=<<ip|host>:<port>,<durationTime>,<<excep-start>-<excep-end>>-->
53+ // <key="Service1" value="127.0.0.1:9090,10,01:30:00-20:00:00" />
5254 String [ ] values = value . Split ( ',' ) ;
5355 String [ ] host_port = values [ ( int ) AMIServer . config_en . address ] . Split ( ':' ) ;
54- String str = "key=" + key + ", value=" + value + " ==> host=" + host_port [ ( int ) AMIServer . config_en . hostname ] + ", port=" + host_port [ ( int ) AMIServer . config_en . port ] + ", duration time=" + values [ ( int ) AMIServer . config_en . durationTime ] ;
56+ String [ ] except_time = values [ ( int ) AMIServer . config_en . exception ] . Split ( '-' ) ;
57+ TimeSpan start = TimeSpan . Parse ( except_time [ ( int ) AMIServer . config_en . excpetional_start_time ] ) ;
58+ TimeSpan end = TimeSpan . Parse ( except_time [ ( int ) AMIServer . config_en . excpetional_end_time ] ) ;
59+ String str = "key=" + key + ", value=" + value + " ==> host=" + host_port [ ( int ) AMIServer . config_en . hostname ] + ", port=" + host_port [ ( int ) AMIServer . config_en . port ] + ", duration time=" + values [ ( int ) AMIServer . config_en . durationTime ] + ", exception: [" + except_time [ ( int ) AMIServer . config_en . excpetional_start_time ] + "-" + except_time [ ( int ) AMIServer . config_en . excpetional_end_time ] + "]" ;
5560 Console . WriteLine ( str ) ;
56- this . list_AMIServer . Add ( new AMIServer ( key , host_port [ ( int ) AMIServer . config_en . hostname ] , int . Parse ( host_port [ ( int ) AMIServer . config_en . port ] ) , int . Parse ( values [ ( int ) AMIServer . config_en . durationTime ] ) ) ) ;
61+ this . list_AMIServer . Add ( new AMIServer ( key ,
62+ host_port [ ( int ) AMIServer . config_en . hostname ] ,
63+ int . Parse ( host_port [ ( int ) AMIServer . config_en . port ] ) ,
64+ int . Parse ( values [ ( int ) AMIServer . config_en . durationTime ] ) ,
65+ start ,
66+ end ) ) ;
5767 }
5868 else {
5969 Console . WriteLine ( "Key={0} value={1}" , key , value ) ;
@@ -74,8 +84,11 @@ private void checkAMIServer(object obj)
7484 Thread . Sleep ( 500 ) ;
7585 DateTime dateTime = DateTime . Now ;
7686 double diff = dateTime . Subtract ( amiServer . TimeStmap ) . TotalSeconds ;
77-
78- if ( diff >= amiServer . DurationTime ) {
87+ TimeSpan timeSpand = dateTime . TimeOfDay ;
88+ if ( diff >= amiServer . DurationTime
89+ && ! ( amiServer . Exceptional_start_time < timeSpand && timeSpand < amiServer . Exceptional_end_time )
90+ ) {
91+ Console . WriteLine ( "{0} < {1} < {2}" , amiServer . Exceptional_start_time , timeSpand , amiServer . Exceptional_end_time ) ;
7992 amiServer . TimeStmap = DateTime . Now ;
8093 Console . WriteLine ( "Servcie {0} sending request" , amiServer . Name ) ;
8194 try
0 commit comments