converge.service
Class DataSource

java.lang.Object
  |
  +--converge.service.DataSource
All Implemented Interfaces:
XMLContentInterface
Direct Known Subclasses:
IMAP

public abstract class DataSource
extends java.lang.Object
implements XMLContentInterface

DataSource on abstrakti yläluokka kaikille tiedonlähteille. Luokka tarjoaa aliluokilleen joitakin tiettyjä yleisiä metodeja, mutta suurin osa metodeista pitää tehdä tiedonlähdekohtaisesti. DataSource-luokasta ei tehdä koskaan ilmentymiä, ainoastaan sen aliluokista.


Field Summary
protected  int consecutiveFailures
           
protected  java.lang.String dataSourceName
           
protected  java.lang.String latestErrorMessage
           
 
Constructor Summary
DataSource()
           
 
Method Summary
abstract  boolean canHandle(java.lang.String URL)
          Palauttaa tiedon siitä, pystyykö tämä DataSource käsittelemään annettua pointteria.
abstract  void createXML(org.w3c.dom.Node parent)
          Muodostaa DataSource-oliosta XML-elementin.
abstract  PipeMessage getAttachment(java.lang.String URL, boolean testOnly)
          Noutaa liitetiedoston osoitteesta URL.
static DataSource getDataSource(java.lang.String name)
          Palauttaa uuden halutuntyyppisen DataSource-olion.
 java.lang.String getErrorMessage()
          Kertoo tätä DataSourcea viimeksi käytettäessä tulleen virheilmoituksen.
 java.lang.String getName()
          Palauttaa DataSource-ilmentymän luonnollisen nimen, esim.
abstract  void getNewData(User user)
          Hakee uudet saapuneet viestit.
abstract  java.lang.String getType()
          Palauttaa DataSource-olion tyypin
 boolean isValid()
          Kertoo onko DataSource käytettävissä (palvelinvirheet).
abstract  boolean loadXML(org.w3c.dom.Node myContent)
          Muodostaa annetusta XML-elementistä DataSource-olion.
 void setErrorMessage(java.lang.String err)
          Asettaa tätä DataSourcea viimeksi käytettäessä tulleen virheilmoituksen.
 void setName(java.lang.String newName)
          Asettaa DataSource-ilmentymän luonnollisen nimen, esim.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

dataSourceName

protected java.lang.String dataSourceName

latestErrorMessage

protected java.lang.String latestErrorMessage

consecutiveFailures

protected int consecutiveFailures
Constructor Detail

DataSource

public DataSource()
Method Detail

getName

public java.lang.String getName()
Palauttaa DataSource-ilmentymän luonnollisen nimen, esim. "Yliopiston IMAP"

Returns:
DataSourcen nimi

setName

public void setName(java.lang.String newName)
Asettaa DataSource-ilmentymän luonnollisen nimen, esim. "Yliopiston IMAP"

Parameters:
newName - uusi DataSourcen nimi

isValid

public boolean isValid()
Kertoo onko DataSource käytettävissä (palvelinvirheet).

Returns:
true jos ok, false jos ongelmia

getErrorMessage

public java.lang.String getErrorMessage()
Kertoo tätä DataSourcea viimeksi käytettäessä tulleen virheilmoituksen.

Returns:
virheilmoitus, null jos ei virhettä

setErrorMessage

public void setErrorMessage(java.lang.String err)
Asettaa tätä DataSourcea viimeksi käytettäessä tulleen virheilmoituksen.

Parameters:
err - virheilmoitus, null jos ei virhettä

getDataSource

public static DataSource getDataSource(java.lang.String name)
Palauttaa uuden halutuntyyppisen DataSource-olion.

Returns:
uusi DataSource-olio

getNewData

public abstract void getNewData(User user)
Hakee uudet saapuneet viestit.

Parameters:
user - käyttäjäolio

getType

public abstract java.lang.String getType()
Palauttaa DataSource-olion tyypin

Returns:
olion tyyppi

canHandle

public abstract boolean canHandle(java.lang.String URL)
Palauttaa tiedon siitä, pystyykö tämä DataSource käsittelemään annettua pointteria.

Parameters:
URL - pointteri
Returns:
pystyykö tämä DataSource noutamaan tämän URLin (teoriassa)

getAttachment

public abstract PipeMessage getAttachment(java.lang.String URL,
                                          boolean testOnly)
Noutaa liitetiedoston osoitteesta URL.

Parameters:
URL - pointteri
testOnly - tarkistetaanko vain liitetiedoston olemassaolo
Returns:
tiedostokahvan ja mahdollisen virheilmoituksen sisältävä PipeMessage

createXML

public abstract void createXML(org.w3c.dom.Node parent)
Muodostaa DataSource-oliosta XML-elementin.

Specified by:
createXML in interface XMLContentInterface
Parameters:
parent - XML-dokumentin node, jonka lapsielementiksi olion tiedot kirjoitetaan

loadXML

public abstract boolean loadXML(org.w3c.dom.Node myContent)
Muodostaa annetusta XML-elementistä DataSource-olion.

Specified by:
loadXML in interface XMLContentInterface
Parameters:
myContent - XML-dokumentin node, jonka lapsielementeistä muodostetaan olion tiedot
Returns:
true jos tietojen lataus onnistui
See Also:
XMLContentInterface.createXML( Node )