title: using vavr how to catch and re-throw the same exception
body: <p>I am new to the functional style of programming using vavr.</p>
  
  <p>I have a method returns the data when its executed successfully and if it fails, it returns the MyCustomRunTimeException.</p>
  
  <p>In my Service class, I am calling this API method, when API method fails I have to catch the exception and going to clear my application cache and return the same exception to the caller (another service method in my case). </p>
  
  <p>if method call success I have to return the actual object, not the Try wrapped object.</p>
  
  <p>How can I achieve this using vavr Try?</p>
  
  <p>I tried to use different methods in vavr Try.recover but I am unable to throw the same exception. </p>
  
  <p>Any sample example or snippet could be very helpful for me if some can provide.</p>
  
  <p>Thanks in advance.</p>
  
  <p>Example:  </p>
  
  <pre><code>Foo doFoo() {
    throw new MyCustomRunTimeException();
  }
  
  
  method1(){
  
     try{
        doFoo();
    }catch(MyCustomRunTimeException ex){
  
  clearcache();
    throw ex;
   }
  }
  </code></pre>