net.http
Class Message

java.lang.Object
  extended bynet.http.Message
Direct Known Subclasses:
Request, Response

public class Message
extends java.lang.Object

Une copie de données lues ou à envoyer sur les Connexion.

Ces données sont organisées en:
- une chaine de caractère (la "start-line" du message http),
- une table de hachage (les headers).
- un tableau de bytes (le corps du message).
Cette classe contient aussi une chaine de caractère representant le numero ip de la machine d'où provient ce message.


Constructor Summary
Message()
          instancie un message vide
 
Method Summary
 void add_header(java.lang.String name, java.lang.String value)
          ajoute le header de nom name et de valeur value, sans ecraser un eventuel header de meme nom
 byte[] content()
          retourne la valeur du champ representant le corps de ce message
 void del_header(java.lang.String name)
          efface tous headers de nom name
 void free()
          donne la valeur null à tous les attributs de ce message.
 boolean has_header(java.lang.String name)
          retourne vrai s'il existe un header de nom name
 java.lang.String head()
          retourne l'entete de ce message (start-line + headers)
 java.lang.String header(java.lang.String name)
          retourne la premiere valeur rencontrée associée au header de nom name ou null si non defini
 java.lang.String ip()
          retourne le numero ip de la machine qui a emis ce message
 long length()
          retourne la valeur du header Content-Length ou -1 si non defini
 void put_header(java.lang.String name, java.lang.String value)
          ajoute le header de nom name et de valeur value. si un header avec ce nom existe dejà, il est ecrasé.
 void set_content(byte[] content)
          affecte la valeur content au champ representant le corps de ce message
 void set_ip(java.lang.String ip)
          affecte la valeur ip au champ representant le numero ip de la machine qui a emis ce message
 void set_start_line(java.lang.String line)
          affecte line au champ representant la start-line de ce message
 java.lang.String start_line()
          retourne la valeur du champ representant la start-line de ce message
 java.lang.String start_line(int i)
          retourne le ieme element (en partant de 0) de la start-line de ce message.
 java.util.Vector values(java.lang.String name)
          retourne l'ensemble des valeurs associées au header de nom name. null si non defini
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Message

public Message()
instancie un message vide

Method Detail

set_start_line

public void set_start_line(java.lang.String line)
affecte line au champ representant la start-line de ce message


start_line

public java.lang.String start_line()
retourne la valeur du champ representant la start-line de ce message


start_line

public java.lang.String start_line(int i)
retourne le ieme element (en partant de 0) de la start-line de ce message. les elements sont les sous-chaines separees par un espace.


put_header

public void put_header(java.lang.String name,
                       java.lang.String value)
ajoute le header de nom name et de valeur value. si un header avec ce nom existe dejà, il est ecrasé.


add_header

public void add_header(java.lang.String name,
                       java.lang.String value)
ajoute le header de nom name et de valeur value, sans ecraser un eventuel header de meme nom


values

public java.util.Vector values(java.lang.String name)
retourne l'ensemble des valeurs associées au header de nom name. null si non defini


header

public java.lang.String header(java.lang.String name)
retourne la premiere valeur rencontrée associée au header de nom name ou null si non defini


has_header

public boolean has_header(java.lang.String name)
retourne vrai s'il existe un header de nom name


del_header

public void del_header(java.lang.String name)
efface tous headers de nom name


head

public java.lang.String head()
retourne l'entete de ce message (start-line + headers)


set_content

public void set_content(byte[] content)
affecte la valeur content au champ representant le corps de ce message


content

public byte[] content()
retourne la valeur du champ representant le corps de ce message


length

public long length()
retourne la valeur du header Content-Length ou -1 si non defini


set_ip

public void set_ip(java.lang.String ip)
affecte la valeur ip au champ representant le numero ip de la machine qui a emis ce message


ip

public java.lang.String ip()
retourne le numero ip de la machine qui a emis ce message


free

public void free()
donne la valeur null à tous les attributs de ce message. le but de cette methode est de faire en sorte que le garbage collector puisse considerer que l'espace mémoire alloué à une instance de cette classe peut etre libéré.