Sto cercando di utilizzare le API di modifica couchdb (continue) da Java e scoprire che dopo aver esaurito l'elenco delle modifiche correnti il flusso sembra essere chiuso, non rimanere aperto per sempre come previsto.Come si usano le modifiche alle modifiche di CouchDB Modifiche continue da Java?
Il codice che sto utilizzando è di seguito. Mi aspetterei di non abbandonare mai il ciclo while, ma facciamo non appena le modifiche attualmente esistenti sono finite in streaming. Sono relativamente nuovo sia su couchdb che su Java, quindi potrebbe mancare qualcosa di ovvio. Qualcuno può mostrarmi come scrivere correttamente?
URL url = new URL("[path to database here]/_changes?feed=continuous";);
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
conn.setDoOutput(true);
conn.setUseCaches(false);
conn.setRequestProperty("Connection", "Keep-Alive");
conn.setRequestMethod("GET");
BufferedReader reader = new BufferedReader(new InputStreamReader(conn.getInputStream()));
String line;
while((line = reader.readLine()) != null){
// do something with the line here
}
// Should never get here under normal circumstances
reader.close();
Ho aperto un difetto qui: https://issues.apache.org/jira/browse/COUCHDB-580 – Joscha