franta-hg@119: package cz.frantovo.nekurak.ext; franta-hg@119: franta-hg@119: import java.io.BufferedReader; franta-hg@119: import java.io.InputStreamReader; franta-hg@119: import java.io.OutputStreamWriter; franta-hg@119: import java.net.URL; franta-hg@119: import java.net.URLConnection; franta-hg@119: import java.net.URLEncoder; franta-hg@119: franta-hg@119: /** franta-hg@119: * Neprovádí vlastní interpretaci Texy syntaxe, ale volá HTTP službu napsanou v PHP. franta-hg@119: * @author fiki franta-hg@119: */ franta-hg@119: public class Texy { franta-hg@119: franta-hg@119: /** TODO: parametrizovatelnost/localhost ? */ franta-hg@119: private static final String URL_SLUZBY = "http://nekurak.net/texy/http/"; franta-hg@119: franta-hg@119: public String preved(String text) { franta-hg@119: try { franta-hg@119: URL url = new URL(URL_SLUZBY); franta-hg@119: URLConnection spojeni = url.openConnection(); franta-hg@119: spojeni.setDoOutput(true); franta-hg@119: franta-hg@119: /** Odešleme data */ franta-hg@119: OutputStreamWriter wr = new OutputStreamWriter(spojeni.getOutputStream()); franta-hg@119: wr.write(URLEncoder.encode(text, "UTF-8")); franta-hg@119: wr.flush(); franta-hg@119: franta-hg@119: /** Přijmeme odpověď */ franta-hg@119: BufferedReader rd = new BufferedReader(new InputStreamReader(spojeni.getInputStream())); franta-hg@119: StringBuffer vysledek = new StringBuffer(); franta-hg@119: String radka; franta-hg@119: while ((radka = rd.readLine()) != null) { franta-hg@119: vysledek.append(radka); franta-hg@119: } franta-hg@119: franta-hg@119: // TODO: → finally franta-hg@119: wr.close(); franta-hg@119: rd.close(); franta-hg@119: franta-hg@119: return vysledek.toString(); franta-hg@119: } catch (Exception e) { franta-hg@123: // TODO: vyhazovat výjimku franta-hg@119: return "TODO:chyba"; franta-hg@119: } finally { franta-hg@123: // TODO: finally close(); franta-hg@119: } franta-hg@119: } franta-hg@119: }