Welcome to the "trac"-ing site of soap4r!
[soap4r] [httpclient] [openpgp4u] [pkcs1] [logger] [csv] [vtr]

Changeset 165

Show
Ignore:
Timestamp:
07/04/01 12:46:06 (8 years ago)
Author:
nakahiro
Message:

Dump HTTP header even when an error was raised.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/lib/soap/streamHandler.rb

    r139 r165  
    114114 
    115115    header = {} 
     116    delayedError = nil 
    116117    begin 
    117118      timeout( CallTimeout ) do 
     
    143144        end 
    144145 
    145         raise HTTPStreamError.new( 'Unexpected EOF...' ) if s.eof 
     146        if s.eof 
     147          raise HTTPStreamError.new( 'Unexpected EOF...' ) 
     148        end 
    146149 
    147150        # Parse HTTP header 
     
    177180        if ( status == '405' ) 
    178181          # 405: Method Not Allowed 
    179           raise PostUnavailableError.new( "#{ status }: #{ reason }" ) 
     182          delayedError = PostUnavailableError.new( "#{ status }: #{ reason }" ) 
    180183        elsif ( status != '200' and status != '500' ) 
    181           raise HTTPStreamError.new( "#{ status }: #{ reason }" ) 
     184          delayedError = HTTPStreamError.new( "#{ status }: #{ reason }" ) 
    182185        elsif ( !header.has_key?( 'content-type' )) 
    183           raise HTTPStreamError.new( 'Content-type not found.' ) 
     186          delayedError = HTTPStreamError.new( 'Content-type not found.' ) 
    184187        elsif ( /^#{ MediaType }(?:;.*)?/ !~ header[ 'content-type' ] ) 
    185 #          raise HTTPStreamError.new( 'Illegal content-type: ' << header[ 'content-type' ] ) 
     188          delayedError = HTTPStreamError.new( 'Illegal content-type: ' << header[ 'content-type' ] ) 
    186189        end 
    187190      end 
     
    209212      f << receiveString 
    210213      f.close 
     214    end 
     215 
     216    if delayedError 
     217      raise delayedError 
    211218    end 
    212219