java/nekurak.net-ejb/src/java/cz/frantovo/nekurak/ext/Texy.java
author František Kučera <franta-hg@frantovo.cz>
Tue May 25 13:54:21 2010 +0200 (2010-05-25)
changeset 123 9135d52e8b0a
parent 119 d91f600c4645
child 132 1ca0d7fdbe51
permissions -rw-r--r--
Test hashovací funkce + test češtiny v identifikátorech
Java Language Specification – 3.8 Identifiers:
http://java.sun.com/docs/books/jls/third_edition/html/lexical.html#40625
     1 package cz.frantovo.nekurak.ext;
     2 
     3 import java.io.BufferedReader;
     4 import java.io.InputStreamReader;
     5 import java.io.OutputStreamWriter;
     6 import java.net.URL;
     7 import java.net.URLConnection;
     8 import java.net.URLEncoder;
     9 
    10 /**
    11  * Neprovádí vlastní interpretaci Texy syntaxe, ale volá HTTP službu napsanou v PHP.
    12  * @author fiki
    13  */
    14 public class Texy {
    15 
    16     /** TODO: parametrizovatelnost/localhost ? */
    17     private static final String URL_SLUZBY = "http://nekurak.net/texy/http/";
    18 
    19     public String preved(String text) {
    20 	try {
    21 	    URL url = new URL(URL_SLUZBY);
    22 	    URLConnection spojeni = url.openConnection();
    23 	    spojeni.setDoOutput(true);
    24 
    25 	    /** Odešleme data */
    26 	    OutputStreamWriter wr = new OutputStreamWriter(spojeni.getOutputStream());
    27 	    wr.write(URLEncoder.encode(text, "UTF-8"));
    28 	    wr.flush();
    29 
    30 	    /** Přijmeme odpověď */
    31 	    BufferedReader rd = new BufferedReader(new InputStreamReader(spojeni.getInputStream()));
    32 	    StringBuffer vysledek = new StringBuffer();
    33 	    String radka;
    34 	    while ((radka = rd.readLine()) != null) {
    35 		vysledek.append(radka);
    36 	    }
    37 
    38 	    // TODO: → finally
    39 	    wr.close();
    40 	    rd.close();
    41 
    42 	    return vysledek.toString();
    43 	} catch (Exception e) {
    44 	    // TODO: vyhazovat výjimku
    45 	    return "TODO:chyba";
    46 	} finally {
    47 	    // TODO: finally close();
    48 	}
    49     }
    50 }