01: /**
02: * <p>
03: * Title: Connection
04: * </p>
05: *
06: * <p>
07: * Description: Represente une entite PHP (fichier à l'extensio php)
08: * </p>
09: *
10: * <p>
11: * Copyright: Copyright (c) 2005
12: * </p>
13: *
14: * commentaire inutile
15: *
16: * <p>
17: * Company:
18: * </p>
19: *
20: * @author Adlani Anouar - Detante Antoine - Klein Gregory - Pepin Pierre
21: * @version 1.0
22: */package httpserver;
23:
24: import java.io.BufferedReader;
25: import java.io.IOException;
26: import java.io.InputStreamReader;
27: import java.io.PrintWriter;
28:
29: public class EntitePHP extends EntiteText {
30:
31: /**
32: * Execute la requete PHP en fonction du fichier demandé
33: * @param nomFichier String nom du fichier demandé
34: * @return EntiteText entité texte
35: */
36: public static EntiteText getFromFile(String nomFichier)
37: throws IOException {
38: BufferedReader br;
39: Process p = Runtime.getRuntime().exec("php " + nomFichier);
40: br = new BufferedReader(new InputStreamReader(p
41: .getInputStream()));
42: StringBuffer sb = new StringBuffer();
43: String ligne = "";
44: while ((ligne = br.readLine()) != null) {
45: sb.append(ligne);
46:
47: }
48: p.destroy();
49: System.out.println(sb.toString());
50: String contenu = sb.toString();
51: return (new EntiteText(contenu));
52: }
53:
54: /**
55: * pour avoir le contenu de l'entité sous forme de chaine de caractère
56: * @return String contenu de l'entité
57: */
58: public String toString() {
59: return contenuEntite;
60: }
61:
62: /**
63: * Envoi de l'entité au client
64: * @param poutput PrintWriter flux d'ecriture vers le client
65: * @throws IOException en cas d'erreur d'ecriture
66: */
67: public void envoyerEntite(PrintWriter poutput) throws IOException {
68: poutput.println(this.contenuEntite);
69: }
70:
71: }
|