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

uaw.util
Class UawURI

java.lang.Object
  |
  +--uaw.util.UawURI

public class UawURI
extends java.lang.Object

Redefinición adaptada de java.net.URI que provee funciones adicionales para gestionar los vínculos de las páginas de un web.UawURI añade una restricción a URI, y es que todas las UawURIs deben ser absolutas y locales.

Algunos métodos de UawURI se basan en los valores de BaseWeb que hay que haber definido previamente.

Version:
1.0, 2004/06
Author:
Mireia Ribera
See Also:
uaw.BaseWeb

UML data model
legend graphical representation



Field Summary
static int ALTRES
Indicador de tipo de fichero.
static int GIFJPEGPNG
Indicador de tipo de fichero GIF, JPEG o PNG.
static int HTMLXML
Indicador de tipo de fichero HTML o XML.
private java.net.URI uriAux
URI encapsulada.
Constructor Summary
protected UawURI ()
Método desaconsejado, se recomienda usar los métodos estáticos convertir, resoldreWebLocal y resoldreWebResultat para crear UawURIs.
Method Summary
static java.lang.String calcularCamiWebLocal (java.net.URI u)
Devuelve una cadena con tantas repeticiones de '../' como directorios haya de u a la dirección base del Web en local.
static UawURI convertir (java.net.URI uri)
Crea una UawURI a partir de una URI.
static void copiar (java.io.FileInputStream in, java.io.PrintStream out)
Copia in en out.
static void copiarFitxer (java.io.File ficheroOrigen, java.io.File ficheroDestino)
copia el ficheroOrigen en ficheroDestino.
static java.lang.String eliminarFitxer (java.net.URI uri)
A partir de la URI dada devuelve otra cadena igual pero sin la palabra que aparece tras el último separador de caminos de ficheros, que suele corresponder al nombre del fichero.
static java.lang.String eliminarFragment (java.lang.String s)
Dada una cadena devuelve la cadena sin la palabra que aparece tras el último carácter #.
static void esborrarContingutDirectori (java.io.File d)
Borra todos los ficheros del directorio si existe.
static boolean esLocal (java.net.URI uri)
Indica si URI es local
static boolean esXarxa (java.net.URI uri)
Indica si URI corresponde a una dirección de un fichero en Internet (http o https).
boolean existeixFitxer ()
Indica si la URI referenciada por esta UawURI existe en el sistema local de ficheros..
static boolean existeixFitxer (java.net.URI uri)
Indica si la URI existe en el sistema local de ficheros.
static java.lang.String extensio (java.lang.String fitxer)
Obtiene la extensión de un fichero (caracteres tras el punto).
java.lang.String getPath ()
Devuelve el path de la URI encapsulada.
void mostrar (java.io.PrintStream salida)
Método creado a efectos de depuración del código que simplemente muestra el contenido de los campos del objeto por el canal de salida especificado.
static int pertanyWeb (java.lang.String ref)
Indica si la URI referenciada pertenece al sitio web definido por BaseWeb
static int pertanyWeb (java.net.URI uri)
Indica si la URI referenciada pertenece al sitio web definido por BaseWeb
java.lang.String recuperarFitxer ()
Devuelve la palabra que aparece tras el último separador de caminos de ficheros de esta UawURI, que suele corresponder al nombre del fichero.
static java.lang.String recuperarFitxer (java.net.URI uri)
A partir de la URI dada devuelve la palabra que aparece tras el último separador de caminos de ficheros, que suele corresponder al nombre del fichero.
static java.lang.String recuperarFragment (java.lang.String strUri)
A partir de la cadena dada devuelve la palabra que aparece tras el último separador de fragmentos.
static java.net.URI relativitzar (java.net.URI u, java.net.URI uBase)
Relativiza u en base a uBase siempre y cuando u pertenezca al Web. En caso contrario devuelve u.
static java.net.URI relativitzarBaseLocal (java.net.URI u, java.net.URI uBase)
Relativiza u en base a uBase, con la particularidad que si u no es hija directa de uBase se relativizan teniendo en cuenta la dirección base local del Web, de la cual ambas descienden.
static UawURI resoldre (java.net.URI origen, java.lang.String path)
Resuelve path en función de la URI origen
static UawURI resoldreWebLocal (java.lang.String sUri)
Crea una UawURI nueva ubicada en el web local con el camino de path calculado a partir de la dirección baseWebLocal de BaseWeb.
static UawURI resoldreWebResultat (java.lang.String sUri)
Crea una UawURI nueva ubicada en el web resultado con el camino de path calculado a partir de la dirección baseWebResultat de BaseWeb.
static java.net.URI seguentFitxer (java.net.URI fitxer)
Devuelve un objeto URI con un nombre parecido al dado, pero que no existe en el sistema de ficheros.
int tipusFitxer ()
Obtiene el tipo de fichero de esta UawURI en base a la extensión del nombre de fichero.
static int tipusFitxer (java.net.URI uri)
Obtiene el tipo de fichero de URI en base a la extensión del nombre de fichero.
java.lang.String toString ()
Devuelve la expresión en forma de cadena de la URI encapsulada.
java.net.URI toURI ()
Devuelve la URI encapsulada
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait

Field Detail

ALTRES

public static final int ALTRES

Indicador de tipo de fichero

See Also:
Constant Field Values

GIFJPEGPNG

public static final int GIFJPEGPNG

Indicador de tipo de fichero GIF, JPEG o PNG.

See Also:
Constant Field Values

HTMLXML

public static final int HTMLXML

Indicador de tipo de fichero HTML o XML.

See Also:
Constant Field Values

uriAux

private java.net.URI uriAux
URI encapsulada.
Constructor Detail

UawURI

protected UawURI()

Método desaconsejado, se recomienda usar los métodos estáticos convertir, resoldreWebLocal y resoldreWebResultat para crear UawURIs.

See Also:
UawURI.convertir(URI uri) , UawURI.resoldreWebLocal(String path) , UawURI.resoldreWebResultat(String path)
Method Detail

calcularCamiWebLocal

public static java.lang.String calcularCamiWebLocal(java.net.URI u)

Devuelve una cadena con tantas repeticiones de '../' como directorios haya des de u a la dirección base del Web en local.


convertir

public static UawURI convertir(java.net.URI uri)
                        throws java.lang.NullPointerException,
                               java.lang.IllegalArgumentException

Crea una UawURI a partir de una URI.

Throws:
java.lang.NullPointerException - si URI es nula
java.lang.IllegalArgumentException - si URI no es local, si no es absoluta o si no tiene una sintaxis correcta

copiar

public static void copiar(java.io.FileInputStream in,
                          java.io.PrintStream out)
                   throws UawException

Copia in en out.

Parameters:
in - el canal de entrada
out - el canal de salida
Throws:
java.lang.NullPointerException - si in o out son nulos.
UawException - si la copia no se ha podido realizar correctamente

copiarFitxer

public static void copiarFitxer(java.io.File ficheroOrigen,
                                java.io.File ficheroDestino)
                         throws java.lang.NullPointerException,
                                java.lang.IllegalArgumentException,
                                UawException

copia el ficheroOrigen a ficheroDestino.

Parameters:
ficheroOrigen - el fichero a copiar
ficheroDestino - el fichero destino
Throws:
java.lang.NullPointerException - si ficheroOrigen o ficheroDestino son nulos.
java.lang.IllegalArgumentException - si ficheroOrigen no existe, o si ficheroDestino no se puede crear
UawException - si la copia no se ha podido llevar a cabo correctamente

eliminarFitxer

public static java.lang.String eliminarFitxer(java.net.URI uri)
                                       throws java.lang.NullPointerException

A partir de la URI dada devuelve otra cadena igual pero sin la palabra que aparece tras el último separador de caminos de ficheros, que suele corresponder al nombre del fichero.Si sólo había el nombre del fichero, devuelve null.

  • Ejemplos:
  • eliminarFitxer(URI("http://www.upc.es/fib/inici.htm")) ...devuelve... "http://www.upc.es/fib/"
  • eliminarFitxer(URI("http://www.upc.es/fib/")) ...devuelve... "http://www.upc.es/fib"
  • eliminarFitxer(URI("inici.htm")) ...devuelve... NULL
Parameters:
uri - la URI a tratar
Throws:
java.lang.NullPointerException - si uri es nula.
See Also:
UawURI.recuperarFitxer(URI uri)

eliminarFragment

public static java.lang.String eliminarFragment(java.lang.String s)
                                         throws java.lang.NullPointerException

Dada una cadena devuelve la cadena sin la palabra que aparece tras el último carácter #.

  • Ejemplos:
  • eliminarFragment("http://www.upc.es/fib/index.htm#inici")) ...devuelve... "http://www.upc.es/fib/index.htm"
  • eliminarFragment(URI("http://www.upc.es/fib/index.htm")) ...devuelve... "http://www.upc.es/fib/index.htm"
  • eliminarFragment(URI("#inici")) ...devuelve... ""
Parameters:
s - la cadena a tratar
Throws:
java.lang.NullPointerException - si s es nulo
See Also:
UawURI.recuperarFragment

esborrarContingutDirectori

public static void esborrarContingutDirectori(java.io.File d)
                                       throws java.lang.NullPointerException

Borra todos los ficheros del directorio d si existe.

Parameters:
d - el directorio a borrar
Throws:
java.lang.NullPointerException - si d es nulo

esLocal

public static boolean esLocal(java.net.URI uri)

Indica si URI es local

Parameters:
uri - la URI a comprobar
Returns:
TRUE si es local, FALSE en caso contrario

esXarxa

public static boolean esXarxa(java.net.URI uri)

Indica si URI corresponde a una dirección de un fichero en Internet (http o https).

Parameters:
uri - la URI a comprobar
Returns:
TRUE si es de Internet, FALSE en caso contrario

existeixFitxer

public static boolean existeixFitxer(java.net.URI uri)
                              throws java.lang.NullPointerException,
                                     java.lang.IllegalArgumentException

Indica si la URI existe en el sistema local de ficheros.

Throws:
java.lang.NullPointerException - si URI es nula
java.lang.IllegalArgumentException - si URI no es valida para crear un fichero local

extensio

public static java.lang.String extensio(java.lang.String fichero)

Obtiene la extensión de un fichero (caracteres tras el punto). Si no hay extensión devuelve null. No realiza ninguna comprobación sobre la validez del parámetro fichero.

  • Ejemplos:
  • extensio("inici.htm") ...devuelve... htm
  • extensio("inicio.htm#pies") ...devuelve... htm
  • extensio("extraño.htm#pies#cabeza.1") ...devuelve... htm
  • extensio("super.complicado.xls") ...devuelve... xls
  • extensio("inicio") ...devuelve...null
  • extensio("inicio.") ...devuelve...null
Parameters:
fichero - el nombre del fichero
Returns:
cadena tras el último '.', eliminando los fragmentos

pertanyWeb

public static int pertanyWeb(java.lang.String ref)
                      throws java.lang.IllegalArgumentException,
                             UawException

Indica si la URI referenciada pertenece al sitio web definido por BaseWeb

Returns:
BaseWeb.LOCAL si pertenece al web origen, BaseWeb.RESULTAT si pertenece al web resultado, BaseWeb.XARXA si pertenece al web en red, -1 en otros casos
Throws:
java.lang.IllegalArgumentException - si ref no tiene una sintaxis correcta como URI
UawException - si no se han definido previamente las direcciones base del web
See Also:
BaseWeb.LOCAL , BaseWeb.XARXA , BaseWeb.RESULTAT

pertanyWeb

public static int pertanyWeb(java.net.URI uri)
                      throws UawException

Indica si la URI referenciada pertenece al sitio web definido por BaseWeb

Returns:
BaseWeb.LOCAL si pertenece al web origen, BaseWeb.RESULTAT si pertenece al web resultado, BaseWeb.XARXA si pertenece al web en red, -1 en otros casos
Throws:
UawException - si no se han definido previamente las direcciones base del web.
See Also:
BaseWeb.LOCAL , BaseWeb.XARXA , BaseWeb.RESULTAT

recuperarFitxer

public static java.lang.String recuperarFitxer(java.net.URI uri)
                                        throws java.lang.NullPointerException

A partir de la URI dada devuelve la palabra que aparece tras el último separador de caminos de ficheros, que suele corresponder al nombre del fichero.Si no hay ninguna devuelve null.

  • Ejemplos:
  • recuperarFitxer(URI("http://www.upc.es/fib/inici.htm")) ...devuelve... "inici.htm"
  • recuperarFitxer(URI("http://www.upc.es/fib/")) ...devuelve... NULL
  • recuperarFitxer(URI("inici.htm")) ...devuelve... "inici.htm"
Parameters:
uri - la URI a tratar
Throws:
java.lang.NullPointerException - si URI es nulo
See Also:
UawURI.eliminarFitxer(URI uri)

recuperarFragment

public static java.lang.String recuperarFragment(java.lang.String strUri)
                                          throws java.lang.NullPointerException

A partir de la cadena dada devuelve la palabra que aparece tras el último separador de fragmentos.Si no hay ninguna devuelve null.

  • Ejemplos:
  • recuperarFragment("http://www.upc.es/fib/inici.htm#seccio2") ...devuelve... "seccio2"
  • recuperarFragment("http://www.upc.es/fib/inici.htm") ...devuelve... NULL
  • recuperarFitxer("#seccio2")) ...devuelve... "seccio2"
Parameters:
strUri - la cadena a tratar
Throws:
java.lang.NullPointerException - si strUri es nulo
See Also:
UawURI.eliminarFragment(String uri)

relativitzar

public static java.net.URI relativitzar(java.net.URI u,
                                        java.net.URI uBase)
                                 throws java.lang.NullPointerException,
                                        java.lang.IllegalArgumentException,
                                        UawException

Relativiza u en base a uBase siempre y cuando u pertenezca al Web. En caso contrario se devuelve u.

Parameters:
u - la URI a relativizar
uBase - la URI en base a la cual se relativiza
Returns:
u relativizada si pertenece a Web, u tal cual en caso contrario
Throws:
java.lang.NullPointerException - si u o uBase son nulos
java.lang.IllegalArgumentException - si uBase no pertenece al web.
UawException - si no se había definido previamente la dirección base del web.
See Also:
pertanyWeb(URI)

relativitzarBaseLocal

public static java.net.URI relativitzarBaseLocal(java.net.URI u,
                                                 java.net.URI uBase)
                                          throws java.lang.NullPointerException,
                                                 java.lang.IllegalArgumentException

Relativiza u en base a uBase, con la particularidad que si u no es descendiente de uBase se relativiza teniendo en cuenta la dirección base local del Web, de la cual ambas son descendientes. Si u referencia un fragmento de uBase se retornará únicamente el fragmento.

Parameters:
u - dirección a relativizar
uBase - dirección a partir de la cual relativizar
Returns:
la dirección relativizada o si se ha producido algún problema, la original
Throws:
java.lang.NullPointerException - si u o uBase son nulas
java.lang.IllegalArgumentException - si uBase no pertenece al Web Local o u no pertenece al web

resoldre

public static UawURI resoldre(java.net.URI origen,
                              java.lang.String path)
                       throws java.lang.NullPointerException,
                              java.lang.IllegalArgumentException

Resuelve path en función de la URI origen

Parameters:
origen - URI a partir de la que se obtiene UawURI
path - String con el path a resolver
Returns:
la UawURI creada
Throws:
java.lang.NullPointerException - si origen o path son nulos
java.lang.IllegalArgumentException - si origen no es local, no es absoluta o no tiene una sintaxis correcta, o si path es absoluto o no tiene una sintaxis correcta.

resoldreWebLocal

public static UawURI resoldreWebLocal(java.lang.String sUri)
                               throws java.lang.NullPointerException,
                                      java.lang.IllegalArgumentException,
                                      UawException

Crea una UawURI nueva ubicada en el web local con el camino de path calculado a partir de la dirección baseWebLocal de BaseWeb.

Returns:
la UawURI nueva
Throws:
java.lang.NullPointerException - si sUri es nulo
java.lang.IllegalArgumentException - si sUri era absoluta y no estaba situada en WebLocal, o si no tenia una sintaxis correcta como URI
UawException - si no se había definido previamente la dirección base local del web.

resoldreWebResultat

public static UawURI resoldreWebResultat(java.lang.String sUri)
                                  throws java.lang.NullPointerException,
                                         java.lang.IllegalArgumentException,
                                         UawException

Crea una UawURI nueva ubicada en el web resultado con el camino de path calculado a partir de la dirección baseWebResultat de BaseWeb.

Returns:
la UawURI nueva
Throws:
java.lang.IllegalArgumentException - si se han producido problemas en la creación de la nueva UawURI
java.lang.NullPointerException - si sUri es nulo
UawException - si no se había definido previamente la dirección base del web resultado

seguentFitxer

public static java.net.URI seguentFitxer(java.net.URI fitxer)

Devuelve un objeto URI con un nombre similar al dado, pero que no existe en el sistema de ficheros.

Por ejemplo, si el fichero de entrada es c:\temp\hola.tmp, seguentFitxer devolverá c:\temp\hola1.tmp, o bien, si hola1.tmp existe devolverá c:\temp\hola2.tmp y así sucesivamente.

Si se ha producido algún problema devuelve null.

Parameters:
fitxer - la URI a renombrar

tipusFitxer

public static int tipusFitxer(java.net.URI uri)

Obtiene el tipo de fichero de URI en base a la extensión del nombre de fichero.

Parameters:
uri - la URI con el fichero a analizar
Returns:
las constantes HTMLXML si es un fichero html o xml, GIFJPEGPNG si es un fichero gif, jpeg, o png, OTROS en los demás casos
See Also:
HTMLXML , GIFJPEGPNG , ALTRES

existeixFitxer

public boolean existeixFitxer()

Indica si la URI referenciada por esta UawURI existe en el sistema local de ficheros.

See Also:
UawURI.existeixFitxer(URI uri)

getPath

public java.lang.String getPath()

Devuelve el path de la URI encapsulada.


mostrar

public void mostrar(java.io.PrintStream salida)

Método creado a efectos de depuración del 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 mostrar los campos

recuperarFitxer

public java.lang.String recuperarFitxer()

A partir de la URI dada devuelve la palabra que aparece tras el último separador de caminos de ficheros, que suele corresponder al nombre del fichero.Si no hay ninguna devuelve null.

  • Ejemplos:
  • recuperarFitxer(URI("http://www.upc.es/fib/inici.htm")) ...devuelve... "inici.htm"
  • recuperarFitxer(URI("http://www.upc.es/fib/")) ...devuelve... NULL
  • recuperarFitxer(URI("inici.htm")) ...devuelve... "inici.htm"
Returns:
el nombre del fichero.
See Also:
UawURI.recuperarFitxer(URI uri)

tipusFitxer

public int tipusFitxer()

Obtiene el tipo de fichero de esta UawURI en base a la extensión del nombre de fichero.

Returns:
las constantes HTMLXML si es un fichero html o xml, GIFJPEGPNG si es un fichero gif, jpeg, o png, ALTRES en los casos restantes.
See Also:
HTMLXML , GIFJPEGPNG , ALTRES

toString

public java.lang.String toString()

Devuelve la expresión en forma de cadena de la URI encapsulada.

Overrides:
toString in class java.lang.Object

toURI

public java.net.URI toURI()
Devuelve la URI encapsulada