2012-04-30 1 views
1

나는 savon을 SOAP API로 사용하는 보석으로 사용하는 클래스가있다. 그리고 때때로 서버에 도달 할 수 없으므로 soap 메소드를 구현하는 메소드는 Timeout::Error을 던집니다. 아니고 문제는이 같은 구조 구현 :Timeout :: error에 대한 클래스 와이드 구조 방법을 정의하는 방법은 무엇입니까?

begin 
    ... 
rescue Timeour::Error 
    ... 
end 

을하지만 영향을 내가 동일한 코드를 50 번 반복 싶지 않다 수 있습니다 정의 ~ 50 가지 방법이있다. Thats는 절대 건조하지 않습니다. 이 문제를 해결할 방법이 있습니까?

def safe_call method, params 
    begin 
    self.send method, params 
    rescue Timeour::Error 
    # do sth heroic to rescue the method 
    end 
end 

을하지만 클래스를 사용하는 모든 스크립트에서 호출 할 때마다 변경해야하기 때문에 꽤 unawesome 먹으 렴 : 이미 같은 STH에 대해 생각했다. 수업 전체를 구조 할 수있는 방법이 있습니까?

+0

그 오류를 복구하려면, 아니면 그냥 무시합니까? –

답변