Changeset 614

Show
Ignore:
Timestamp:
05/03/07 10:27:53 (2 years ago)
Author:
sacha
Message:

more information (new methods) about failed messages.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/src/hefeweizen_library_message_state.rb

    r557 r614  
    116116        @ack_signal_message_states = [ 'received', 'created', 'processed', 'failed_to_process' ] 
    117117        @error_signal_message_states = [ 'received', 'created', 'processed', 'failed_to_process' ] 
     118         
     119        @signals_failure = ['failed_to_process', 'ping_IPY_failed', 'ping_YPM_failed', 'failed_to_process'] 
    118120 
    119121        @all_states.concat @ack_signal_message_states 
    120122        @all_states.concat @error_signal_message_states 
     123 
    121124 
    122125        @final_states.concat ['processed', 'failed_to_process'] 
     
    217220      public  
    218221       
     222      def get_failed_messages_information 
     223        result = Hash.new 
     224        result['number_failed_user_messages'] = get_number_of_failed_user_messages 
     225        result['number_failed_signal_messages'] = get_number_of_failed_signal_messages 
     226        user_failed_ids = Array.new 
     227        signal_failed_ids = Array.new 
     228        @user_message_failure.each{ | state | 
     229          puts state 
     230          user_failed_ids.concat Dir.glob("#{@states_path}/#{state}/*").collect{|path| File.basename path} 
     231        } 
     232        @signals_failure.each{ | state | 
     233          puts state 
     234          signal_failed_ids.concat Dir.glob("#{@states_path}/#{state}/*").collect{|path| File.basename path} 
     235        } 
     236        result['user_failed_ids'] = user_failed_ids 
     237        result['signal_failed_ids'] = signal_failed_ids 
     238        return result 
     239      end 
     240 
    219241      def get_number_times_resent message_id 
    220242        files = "#{@messages_dir}/#{message_id}/resends/[a-z][a-z]__*" 
     
    312334      end 
    313335       
     336 
    314337      def get_number_of_failed_user_messages 
    315338        a = Dir.glob("#{@states_path}/failed_to_send/*").size 
     
    324347      end 
    325348 
     349      def get_number_of_failed_signal_messages 
     350        total = 0 
     351        @signals_failure.each{ | state | 
     352          total += Dir.glob("#{@states_path}/state/*").size 
     353        } 
     354        total 
     355      end 
     356 
    326357      def get_number_of_received_and_accepted_user_messages 
    327358        Dir.glob("#{@states_path}/received_and_accepted/*").size 
     
    330361      def current_situation_report 
    331362        # categories of states 
    332         #        @successful_user_message_states = [ 'delivered', 'delivered-x', 'received_and_accepted'] 
    333         #        @failed_user_message_states = [ 'failed_to_send', 'failed_to_receive'] 
    334          
    335         #        @successful_signal_message_states = [ 'processed' ] 
    336         #        @failed_signal_message_states = [ 'failed_to_process' ] 
    337  
    338         #        @user_messages_in_process = [ 'new', 'received', 'awaiting_ack' ] 
     363        # @successful_user_message_states = [ 'delivered', 'delivered-x', 'received_and_accepted'] 
     364        # @failed_user_message_states = [ 'failed_to_send', 'failed_to_receive'] 
     365         
     366        # @successful_signal_message_states = [ 'processed' ] 
     367        # @failed_signal_message_states = [ 'failed_to_process' ] 
     368        # @user_messages_in_process = [ 'new', 'received', 'awaiting_ack' ] 
    339369 
    340370        hash = Hash.new 
     
    380410        FileUtils.mkdir "#{dir}/resends" 
    381411         
    382  
    383412        # initializing the counter for the history. 
    384413        counter_file = File.new "#{dir}/message_history/counter", "w" 
     
    696725 
    697726      ############################# message received (typed) 
    698       # maybe remove these fucker
     727      # maybe remove these method
    699728 
    700729      def ebXML_message_received_at message_id, time