marcoantoniobferreira commented on a change in pull request #581: 
TOMEE-2699-Translate to portuguese the Example.
URL: https://github.com/apache/tomee/pull/581#discussion_r330858576
 
 

 ##########
 File path: examples/mp-faulttolerance-timeout/README_pt.adoc
 ##########
 @@ -0,0 +1,107 @@
+= Tolerância a falhas (Fault Tolerance) no MicroProfile - Timeout (Tempo de 
espera)
+:index-group: MicroProfile
+:jbake-type: page
+:jbake-status: published
+
+Este é um exemplo de como usar o Microprofile `@Timeout` no TomEE.
+
+[discrete]
+== Funcionalidade de tiempo de espera (Timeout)
+
+`Fault Tolerance Timeout` permite especificar quanto tempo pode tomar uma 
tarefa em completar sua execução e abortá-lo caso demore mais que o tempo 
especificado. A funcionalidade de Timeout pode ser usada em conjunto com outras 
anotações para guiar a execução e resultado de uma tarefa. Olhe para o
+https://download.eclipse.org/microprofile/microprofile-fault-tolerance-1.1/microprofile-fault-tolerance-spec.html#_timeout_usage[especificación]
+para mais detalles.
+
+A anotação `@Timeout` permite configurar:
+
+* *value:* o valor do tempo de espera
+* *unit:* a unidade do tempo de espera
+
+[discrete]
+== EXemplo
+
+[discrete]
+=== Execute o aplicativo
+
+[source,bash]
+----
+mvn clean install tomee:run
+----
+
+[discrete]
+=== Como funciona isto?
+
+O método `statusOfDayByAccuWeather` falha quando se atinge o limiar da
+anotação `@Timeout` devido a uma larga execução do método
+`longProcessingTask`. Para responder bem a solicitação, se executará um
+método alternativo para completar a solicitação exitosamente. O método
+alternativo está determinado pela anotação `@Fallback`.
+
+[source,java]
+----
+@RequestScoped
+public class WeatherGateway {
+
+    private static final Logger LOGGER = 
Logger.getLogger(WeatherGateway.class.getName());
+
+    @Timeout(50)
+    @Fallback(fallbackMethod = "statusOfWeekByMetEireann")
+    public String statusOfDayByAccuWeather(){
+        return longProcessingTask();
+    }
+
+    public String statusOfWeekByMetEireann(){
+        LOGGER.log(Level.WARNING, "MetEireann backup service has been 
requested due to AccuWeather timeout");
+        return "Beautiful day";
+    }
+
+    private String longProcessingTask(){
+        try {
+            Thread.sleep(80);
+        } catch (InterruptedException e) {
+            LOGGER.log(Level.WARNING,"AccuWeather task has been interrupted.");
+        }
+        return null;
+    }
+    ...
+}
+----
+
+Chamada para o estado do dia
+
+[source,text]
+----
+GET http://localhost:8080/mp-faulttolerance-timeout/weather/day/status
+----
+
+Logs do Servidor
+
+[source,text]
+----
+WARNING AccuWeather task has been interrupted.
+WARNING MetEireann fallback service has been requested due to AccuWeather 
timeout.
+----
+
+Resposta HTTP
+
+[source,text]
+----
+Beautiful day!
+----
+
+[discrete]
+=== Executando os testes
+
+Você também pode experimentá-lo usando o
+link:src/test/java/org/superbiz/rest/WeatherServiceTest.java[WeatherServiceTest.java]
 disponible en el proyecto.
 
 Review comment:
   the sentence "disponible en el proyecto" is in spanish.

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

Reply via email to