Sidar, principal.
>>contenido
Fundación Sidar - Acceso Universal
Seminario SIDAR
Principal >> Aplicación: UAW >> Documentación de las clases java

uaw
Class BaseWeb

java.lang.Object
  |
  +--uaw.BaseWeb
All Implemented Interfaces:
java.io.Serializable

public class BaseWeb
extends java.lang.Object
implements java.io.Serializable

BaseWeb guarda las localizaciones base del web de forma estática :

	   la dirección base de red del tipo  'http://www.upc.es/fib" 
	   y una  dirección IP alternativa.
	   la dirección base en local, del tipo  'c:\webs\elmeuweb'
		y el fichero inicial del web.
	   la dirección del web resultado del tipo 'c:\webs\elmeuweb\res'
		y la  dirección del directorio de los ficheros CSS generados por programa. 
      

Estas direcciones las usará Web o sus descendientes para el tratamiento de vínculos relativos y absolutos, internos y externos y para la creación de nuevas páginas.

Los datos mínimos que ha de contener son la dirección base en local, el fichero inicial y la dirección base resultado.

Para comprobar que los datos son válidos BaseWeb cuenta con el método valid .


En un momento determinado sólo puede haber un BaseWeb vivo, pero podemos serializar las direcciones base de un web dado o recuperar uno anterior gracias a los métodos writeObject y readObject(String) . En el momento de serialización si el nombre no está definido se genera automáticamente, por ello es importante inicializarlo y así poder identificar el web más fácilmente en accesos futuros.

La serialización crea un fichero XML con la siguiente estructura (ver {directori usuari}/dtd/web.dtd), que se parsea en el momento de desserialización :

     <?xml version="1.0" encoding="UTF-8"?>
     <web>
        <nom>miweb</nom>
        <local>
           <directori_local>c:\webs\miweb</directori_local>
           <fitxer_inicial>index.htm</fitxer_inicial>
	  </local>
	  <resultat>
            <directori_resultat> c:\webs\res\miweb</directori_resultat > 
            <directori_css>c:\webs\res\miweb\css</directori_css> 
        </resultat>
	  <xarxa>
           <url>http://www.upc.es/fib</url>
           <ip_alternativa>140.150.111.101</ip_alternativa>
        </xarxa> 
     </web>
  

BaseWeb también cuenta con un campo de la clase UawConfiguració, que no se archiva ni recupera, pero que facilita a las otras clases el uso de los recursos genéricos del programa tales como mensajes, directorios, etc.

Version:
1.0, 2004/06
Author:
Mireia Ribera
See Also:
uaw.Web , Serialized Form

UML data model
legend graphical representation



Field Summary
private static java.net.URI baseWebCss
La dirección base del directorio de las CSS generadas por programa, que ha de ser relativa a la dirección baseWebResultat.
private static java.net.URI baseWebLocal
La dirección base del web en local, del tipo'c:\webs\miweb'.
private static java.net.URI baseWebResultat
La dirección base del web resultante, del tipo 'c:\webs\miweb\res'.
private static java.net.URI baseWebXarxa
La dirección base del web en red del tipo 'http://www.upc.es/fib'.
private static int comptadorWebs
Contador para generar nombres de webs correlativos de forma automática.
private static java.net.URI fitxerInicial
El fichero por el cual se iniciará el análisis del web, debe ser relativo a la dirección base local.
private static java.net.URI IPAdress
Dirección numérica -- con sintaxis IPv4 -- alternativa a la dirección base del web en red de tipo '161.116.140.15'.
static int LOCAL
Constante para determinar el tipo de dirección, correspondiente al web original (LOCAL), al web resultado (RESULTAT), o al web en red (XARXA).
private static java.lang.String nom
El nombre del web.
static int RESULTAT
Constante para determinar el tipo de dirección, correspondiente al web original (LOCAL), al web resultado (RESULTAT), o al web en red (XARXA).
static UawConfiguracio uc
Campo para acceder a las propiedades de configuración del programa, uso de recursos genéricos como mensajes, directorios, etc.
static int XARXA
Constante para determinar el tipo de dirección, correspondiente al web original (LOCAL), al web resultado (RESULTAT), o al web en red (XARXA).
Constructor Summary
BaseWeb ()
Constructor simple para crear una instancia de la clase.
BaseWeb (java.lang.String uri)
Crea un nuevo objeto con los datos de la URI uri, el contenido de la cual debe corresponder a la estructura descrita préviamente.
Method Summary
static java.lang.String formatejar ()
Crea el documento XML de los datos del web con la estructura descrita préviamente.
static java.lang.String getBaseWebCss ()
Devuelve la dirección base del directorio usado por las hojas de estilo CSS en el directorio resultado en formato de cadena si se ha inicializado, y en caso contrario devuelve null.
static java.lang.String getBaseWebLocal ()
Devuelve el directorio base del Web original en local en formato de cadena si se ha inicializado, y en caso contrario devuelve null.
static java.lang.String getBaseWebResultat ()
Devuelve el directorio base del Web resultado en local en formato de cadena si se ha inicializado, y en caso contrario devuelve null.
static java.lang.String getBaseWebXarxa ()
Devuelve la dirección base del Web en la red en formato de cadena si se ha inicializado, y en caso contrario devuelve null.
static java.lang.String getFitxerInicial ()
Devuelve el fichero inicial en formato de cadena si se ha inicializado, y en caso contrario devuelve null.
static java.lang.String getIPAdress ()
Devuelve la IP del Web en formato de cadena si se ha inicializado, y en caso contrario devuelve null.
static java.lang.String getNom ()
Devuelve el nombre del web si se ha inicializado, y en caso contrario devuelve null.
static java.net.URI getUriBaseWebCss ()
Devuelve la URI de la dirección base del directorio usado por las hojas de estilo CSS en el directorio resultado si se ha inicializado, y en caso contrario devuelve null.
static java.net.URI getUriBaseWebLocal ()
Devuelve la URI del directorio base del Web original en local si se ha inicializado, y en caso contrario devuelve null.
static java.net.URI getUriBaseWebResultat ()
Devuelve la URI del directorio base del Web resultado en local si se ha inicializado, y en caso contrario devuelve null.
static java.net.URI getUriBaseWebXarxa ()
Devuelve la URI de la dirección base del Web en la red si se ha inicializado, y en caso contrario devuelve null.
static java.net.URI getUriFitxerInicial ()
Devuelve la URI del fichero inicial si se ha inicializado, y en caso contrario devuelve null.
static java.net.URI getUriIPAdress ()
Devuelve la URI de la IP del Web si se ha inicializado, y en caso contrario devuelve null.
static void guardar ()
Escribe los valores de BaseWeb en el fichero user\\webs\\nombr.xml --, siendo nombr los primeros 5 carácteres del nombre del web.
static void mostrar (java.io.PrintStream salida)
Método creado a efectos de depuración de código que simplemente muestra el contenido de los campos del objeto por el canal de salida especificado.
static void readObject (java.lang.String uri)
Lee los datos registrados en la URI uri, y modifica los valores de los campos que corresponda.
static void setBaseWebCss (java.io.File cssBase)
Establece un directorio base para los ficheros de hojas de estilo.
static void setBaseWebLocal (java.io.File adrecaBase)
Establece el directorio del web en local.
static void setBaseWebResultat ()
Establece el directorio del web resultante en función de la propiedad directoriResultat de la configuración del programa.
static void setBaseWebResultat (java.io.File adrecaBaseResultat)
Establece el directorio del web resultante.
static void setBaseWebXarxa (java.net.URI adrecaBase)
Establece la ubicación del web en la red.
static void setFitxerInicial (java.io.File fitxer)
Establece el fichero por el que se empezará a trabajar.
static void setIPAdress (java.net.URI ip)
Establece el campo IPadress, que representa una dirección numérica -- con sintaxis IPv4 -- alternativa a la dirección base del web en red del tipo '161.116.140.15'.
static void setNom ()
Establece un nombre para el web en función de la propiedad nomWebs de la configuración del programa y un número correlativo dado por el campo comptadorWebs.
static void setNom (java.lang.String nombre)
Establece el nombre del web.
static boolean valid ()
Comprueba que se han definido los valores mínimos necesarios para BaseWeb (baseWebLocal, baseWebResultat y fitxerInicial) y que tanto estos como otros valores definidos son correctos.
static void writeObject (java.lang.String fitxer)
Guarda las direcciones base y el nombre del web.
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Field Detail

baseWebCss

private static java.net.URI baseWebCss

La dirección base del directorio de las CSS generadas por programa, que debe ser relativa a la dirección baseWebResultat.

See Also:
baseWebResultat

baseWebLocal

private static java.net.URI baseWebLocal

La dirección base del web en local, del tipo 'c:\webs\miweb'.


baseWebResultat

private static java.net.URI baseWebResultat

La dirección base del web resultante, del tipo 'c:\webs\miweb\res'.


baseWebXarxa

private static java.net.URI baseWebXarxa

La dirección base del web en red del tipo 'http://www.upc.es/fib'.


comptadorWebs

private static int comptadorWebs

Contador para generar nombres de webs correlativos de forma automática.

See Also:
setNom()

fitxerInicial

private static java.net.URI fitxerInicial

El fichero por el cual se iniciará el análisis del web, que debe ser relativo a la dirección base local.

See Also:
uaw.UawConfiguracio

IPAdress

private static java.net.URI IPAdress

Dirección numérica -- en sintaxis IPv4 -- alternativa a la dirección base del web en red del tipo '161.116.140.15'.


LOCAL

public static final int LOCAL

Constante para determinar el tipo de dirección, correspondiente al web original (LOCAL), al web resultado (RESULTAT), o al web en red (XARXA).

See Also:
Constant Field Values

nom

private static java.lang.String nom

El nombre del web.

See Also:
setNom() , setNom(String)

RESULTAT

public static final int RESULTAT

Constante para determinar el tipo de dirección, correspondiente al web original (LOCAL), al web resultado (RESULTAT), o al web en red (XARXA).

See Also:
Constant Field Values

uc

public static transient UawConfiguracio uc

Campo para acceder a las propiedades de configuración del programa, uso de recursos genéricos como mensajes, directorios, etc. Este campo no se serializa. Se inicializa en el constructor.

See Also:
uaw.UawConfiguracio

XARXA

public static final int XARXA

Constante para determinar el tipo de dirección, correspondiente al web original (LOCAL), al web resultado (RESULTAT), o al web en red (XARXA).

See Also:
Constant Field Values
Constructor Detail

BaseWeb

public BaseWeb()

Constructor simple para crear una instancia.


BaseWeb

public BaseWeb(java.lang.String uri)
        throws java.lang.NullPointerException,
               java.lang.IllegalArgumentException,
               UawException

Crea un nuevo objeto con los datos de la URI uri, el contenido de la cual debe corresponder a la estructura descrita préviamente.

Parameters:
uri - URI del fichero que contiene los datos de BaseWeb
Throws:
java.lang.NullPointerException - si uri es nula
java.lang.IllegalArgumentException - si uri no tiene una sintaxis correcta como URI
UawException - si ha habido problemas en la lectura, configuración del parser o parseado del fichero fuente.
Method Detail

formatejar

public static java.lang.String formatejar()

Crea el documento XML de los datos del web con la estructura descrita préviamente.

Si en el momento de crearse el documento el web no tenia nombre, se genera automáticamente.


getBaseWebCss

public static java.lang.String getBaseWebCss()

Devuelve la dirección base del directorio usado por las hojas de estilo CSS en el directorio resultado en formato de cadena si se ha inicializado, y en caso contrario devuelve null.


getBaseWebLocal

public static java.lang.String getBaseWebLocal()

Devuelve el directorio base del Web original en local en formato de cadena si se ha inicializado, y en caso contrario devuelve null.


getBaseWebResultat

public static java.lang.String getBaseWebResultat()

Devuelve el directorio base del Web resultado en local en formato de cadena si se ha inicializado, y en caso contrario devuelve null.


getBaseWebXarxa

public static java.lang.String getBaseWebXarxa()

Devuelve la dirección base del Web en la red en formato de cadena si se ha inicializado, y en caso contrario devuelve null.


getFitxerInicial

public static java.lang.String getFitxerInicial()

Devuelve el fichero inicial en formato de cadena si se ha inicializado, y en caso contrario devuelve null.


getIPAdress

public static java.lang.String getIPAdress()

Devuelve la IP del Web en formato de cadena si se ha inicializado, y en caso contrario devuelve null.


getNom

public static java.lang.String getNom()

Devuelve el nombre del web si se ha inicializado, y en caso contrario devuelve null.


getUriBaseWebCss

public static java.net.URI getUriBaseWebCss()

Devuelve la URI de la dirección base del directorio usado por las hojas de estilo CSS en el directorio resultado si se ha inicializado, y en caso contrario devuelve null.


getUriBaseWebLocal

public static java.net.URI getUriBaseWebLocal()

Devuelve la URI del directorio base del Web original en local si se ha inicializado, y en caso contrario devuelve null.


getUriBaseWebResultat

public static java.net.URI getUriBaseWebResultat()

Devuelve la URI del directorio base del Web resultado en local si se ha inicializado, y en caso contrario devuelve null.


getUriBaseWebXarxa

public static java.net.URI getUriBaseWebXarxa()

Devuelve la URI de la dirección base del Web en la red si se ha inicializado, y en caso contrario devuelve null.


getUriFitxerInicial

public static java.net.URI getUriFitxerInicial()

Devuelve la URI del fichero inicial si se ha inicializado, y en caso contrario devuelve null.


getUriIPAdress

public static java.net.URI getUriIPAdress()

Devuelve la URI de la IP del Web si se ha inicializado, y en caso contrario devuelve null.


guardar

public static void guardar()
                    throws UawException

Escribe los valores de BaseWeb en el fichero user\\webs\\nombr.xml --en el que nombr son los primeros 5 carácteres del nombre del web--. Si el fichero ya existía se sobreescribe.

El formato del fichero es XML con la estructura descrita préviamente.

Throws:
UawException - si ha habido algún problema durante la escritura del fichero.

mostrar

public static void mostrar(java.io.PrintStream salida)

Método creado a efectos de depuración de código que simplemente muestra el contenido de los campos del objeto por el canal de salida especificado.

Parameters:
salida - canal de salida por el que se mostrarán los campos.

readObject

public static void readObject(java.lang.String uri)
                       throws java.lang.NullPointerException,
                              java.lang.IllegalArgumentException,
                              UawException

Lee los datos registrados en la URI uri, y modifica los valores de los campos que corresponda. Si la lectura no funciona deja todos los campos a null.

El formato del fichero debe ser XML con la estructura descrita préviamente.

Parameters:
uri - cadena del fichero a leer.
Throws:
java.lang.NullPointerException - si uri es nula
java.lang.IllegalArgumentException - si uri no tiene una sintaxis correcta como URI
UawException - si se han producido problemas durante la lectura, configuración del parser o parseado del fichero fuente.

setBaseWebCss

public static void setBaseWebCss(java.io.File cssBase)
                          throws java.lang.NullPointerException,
                                 java.lang.IllegalArgumentException,
                                 UawException

Establece un directorio base para los ficheros de hojas de estilo. Si el directorio es relativo se creará a partir de la dirección base resultado.

Precondición: la dirección base resultado debe estar definida préviamente.

Parameters:
cssBase - el directorio absoluto o relativo de las hojas de estilo
Throws:
java.lang.NullPointerException - si el parámetro es nulo
java.lang.IllegalArgumentException - si el parámetro no es un directorio o no es un subdirectorio de la dirección resultado
UawException - si la dirección base del web resultado no esta definida

setBaseWebLocal

public static void setBaseWebLocal(java.io.File adrecaBase)
                            throws java.lang.NullPointerException,
                                   java.lang.IllegalArgumentException

Establece el directorio del web en local.

Parameters:
adrecaBase - dirección base del web en local del tipo 'c:\webs\miweb\'.
Throws:
java.lang.NullPointerException - si adrecaBase es nulo
java.lang.IllegalArgumentException - si adrecaBase no es correcto
UawException - si el fichero inicial del web ya esta definido y no dentro de este directorio

setBaseWebResultat

public static void setBaseWebResultat()
                               throws UawException

Establece el directorio del web resultante en función de la propiedad directoriResultat de la configuración del programa. Si el directorio no existía en el sistema de ficheros lo crea y crea todos los directorios padres necesarios.

Throws:
UawException -- si la propiedad directoriResultat no esta definida, o si no corresponde a un directorio, o si la dirección base de las hojas de estilo CSS ya esta definida y no dentro de este directorio.
See Also:
uaw.UawConfiguracio

setBaseWebResultat

public static void setBaseWebResultat(java.io.File adrecaBaseResultat)
                               throws java.lang.NullPointerException,
                                      java.lang.IllegalArgumentException

Establece el directorio del web resultante. Si el directorio no existía en el sistema de ficheros, lo crea y crea todos los directorios padre necesarios.

Parameters:
adrecaBaseResultat - dirección base del web resultante del tipo 'c:\webs\elmeuweb\res'.
Throws:
java.lang.NullPointerException - si el parámetro es nulo
java.lang.IllegalArgumentException - si el parámetro no es correcto
UawException - si la dirección base de las hojas de estilo CSS ya está definida y no dentro de este directorio, o si adrecaBaseResultat es un subdirectorio de la dirección base en local.

setBaseWebXarxa

public static void setBaseWebXarxa(java.net.URI adrecaBase)
                            throws java.lang.NullPointerException,
                                   java.lang.IllegalArgumentException

Establece la ubicación del web en la red.

Parameters:
adrecaBase - dirección base del web en la red del tipo 'http://www.upc.es/fib'.
Throws:
java.lang.NullPointerException - si el parámetro es nulo
java.lang.IllegalArgumentException - si el parámetro no es una URL correspondiente a un protocolo http o https

setFitxerInicial

public static void setFitxerInicial(java.io.File fitxer)
                             throws java.lang.NullPointerException,
                                    java.lang.IllegalArgumentException

Establece el fichero por el que se empezará a trabajar.

Precondición: la dirección base local debe estar definida previamente.

Parameters:
fitxer - fichero con el que se empezará a trabajar.
Throws:
UawException - si la dirección base local no estaba definida.
java.lang.IllegalArgumentException - si fichero no es absoluto o no pertenece al directorio base del web en local.
java.lang.NullPointerException - si fichero es nulo
See Also:
baseWebLocal

setIPAdress

public static void setIPAdress(java.net.URI ip)
                        throws java.lang.NullPointerException

Establece el campo IPadress, que representa una dirección numérica -- con sintaxis IPv4 -- alternativa a la dirección base del web en red del tipo '161.116.140.15'.

Parameters:
ip - la dirección IP
Throws:
java.lang.NullPointerException - si ip es nulo

setNom

public static void setNom()
                   throws UawException

Establece un nombre para el web en función de la propiedad nomWebs de la configuración del programa y un número correlativo dado por el campo comptadorWebs.

Precondición: la propiedad nomWebs debe estar definida previamente

Throws:
UawException - si la propiedad nomWebs no esta definida

setNom

public static void setNom(java.lang.String nombre)
                   throws java.lang.NullPointerException

Establece el nombre del web.

Throws:
java.lang.NullPointerException - si nombre es nulo

valid

public static boolean valid()

Comprueba que se han definido los valores mínimos necesarios para BaseWeb (baseWebLocal, baseWebResultat y fitxerInicial) y que tanto estos como otros valores definidos son correctos.


writeObject

public static void writeObject(java.lang.String fitxer)
                        throws UawException

Guarda las direcciones base y el nombre del web en un fichero. El formato del fichero es XML con la estructura descrita préviamente. Si el web en el momento de guardarse no tenia nombre, se genera automáticamente

Throws:
UawException - si la escritura no ha funcionado