net.ezcontent.impl.dao
Class DocsDAO

java.lang.Object
  extended byorg.springframework.orm.hibernate.support.HibernateDaoSupport
      extended bynet.ezcontent.impl.dao.GlobalDAO
          extended bynet.ezcontent.impl.dao.DocsDAO
All Implemented Interfaces:
DocumentDAO, GenericDAO, InitializingBean

public class DocsDAO
extends GlobalDAO
implements DocumentDAO

Implementacion del DAO para documentos, utilizando Hibernate y Spring.

Author:
Enrique Zamudio

Field Summary
 
Fields inherited from class org.springframework.orm.hibernate.support.HibernateDaoSupport
logger
 
Constructor Summary
DocsDAO()
           
 
Method Summary
 Attachment createAttachment()
          Crea un anexo nuevo.
 Document createDocument()
          Crea un nuevo documento.
 Image createImage()
          Crea una imagen.
 Link createLink()
          Crea una liga externa.
 Reference createReference()
          Crea una referencia a un documento (en blanco).
 Subject createSubject()
          Crea un tema nuevo.
 Subject createSubject(Subject parent)
          Crea un subtema nuevo para el tema especificado.
 List getChildren(Subject subject)
          Obtiene los subtemas de un tema.
 List getDocuments(Subject subject)
          Devuelve una lista con todos los documentos registrados en un tema.
 List getFullTree(Subject subject)
          Devuelve una lista con todos los subtemas de un tema.
private  void getKids(Subject sub, List all)
          Pide al tema sus subtemas, y a cada uno sus subtemas de manera recursiva.
 List getPublishedDocuments(Subject subject)
          Devuelve una lista con todos los documentos publicados en un tema.
 Status getPublishedStatus()
          Devuelve el status de Publicado.
 List getRootSubjects()
          Devuelve una lista con los temas raiz.
 Subject getSubject(int subjectID)
          Busca un tema por su clave y lo devuelve.
 void publishDocument(Document doc)
          Marca un documento como publicado por tiempo indefinido y guarda los cambios en la base de datos.
 void publishDocument(Document doc, int days)
          Marca un documento como publicado por los dias que se indican, y guarda los cambios en la base de datos.
 void unpublishDocument(Document doc)
          Despublica un documento inmediatamente.
 
Methods inherited from class net.ezcontent.impl.dao.GlobalDAO
delete, delete, findAll, findAll, getStatus, getStatus, getStatus, getStatus, getStatusList, getStatusList, refresh, refresh, save, save, update, update
 
Methods inherited from class org.springframework.orm.hibernate.support.HibernateDaoSupport
afterPropertiesSet, closeSessionIfNecessary, convertHibernateAccessException, getHibernateTemplate, getSession, getSession, getSessionFactory, initDao, setHibernateTemplate, setSessionFactory
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface net.ezcontent.dao.GenericDAO
delete, delete, findAll, findAll, getStatus, getStatus, getStatusList, refresh, refresh, save, save, update, update
 

Constructor Detail

DocsDAO

public DocsDAO()
Method Detail

getRootSubjects

public List getRootSubjects()
Devuelve una lista con los temas raiz. Son los temas que no tienen padre.

Specified by:
getRootSubjects in interface DocumentDAO
See Also:
DocumentDAO.getRootSubjects()

getSubject

public Subject getSubject(int subjectID)
Busca un tema por su clave y lo devuelve.

Specified by:
getSubject in interface DocumentDAO
See Also:
DocumentDAO.getSubject(int)

getChildren

public List getChildren(Subject subject)
Obtiene los subtemas de un tema.

Specified by:
getChildren in interface DocumentDAO
See Also:
DocumentDAO.getChildren(net.ezcontent.document.Subject)

getKids

private void getKids(Subject sub,
                     List all)
Pide al tema sus subtemas, y a cada uno sus subtemas de manera recursiva.


getFullTree

public List getFullTree(Subject subject)
Devuelve una lista con todos los subtemas de un tema. El orden en que vienen los temas en la lista resultante es equivalente a recorrer el arbol de temas a partir del nodo indicado, en modo postfijo.

Specified by:
getFullTree in interface DocumentDAO
See Also:
DocumentDAO.getFullTree(net.ezcontent.document.Subject)

getDocuments

public List getDocuments(Subject subject)
Devuelve una lista con todos los documentos registrados en un tema.

Specified by:
getDocuments in interface DocumentDAO
See Also:
DocumentDAO.getDocuments(net.ezcontent.document.Subject)

getPublishedDocuments

public List getPublishedDocuments(Subject subject)
Devuelve una lista con todos los documentos publicados en un tema.

Specified by:
getPublishedDocuments in interface DocumentDAO
See Also:
DocumentDAO.getPublishedDocuments(net.ezcontent.document.Subject)

publishDocument

public void publishDocument(Document doc)
Marca un documento como publicado por tiempo indefinido y guarda los cambios en la base de datos.

Specified by:
publishDocument in interface DocumentDAO
See Also:
DocumentDAO.publishDocument(net.ezcontent.document.Document)

publishDocument

public void publishDocument(Document doc,
                            int days)
Marca un documento como publicado por los dias que se indican, y guarda los cambios en la base de datos.

Specified by:
publishDocument in interface DocumentDAO
See Also:
DocumentDAO.publishDocument(net.ezcontent.document.Document, int)

unpublishDocument

public void unpublishDocument(Document doc)
Despublica un documento inmediatamente.

Specified by:
unpublishDocument in interface DocumentDAO
See Also:
DocumentDAO.unpublishDocument(net.ezcontent.document.Document)

getPublishedStatus

public Status getPublishedStatus()
Devuelve el status de Publicado.

Specified by:
getPublishedStatus in interface DocumentDAO

createDocument

public Document createDocument()
Crea un nuevo documento.

Specified by:
createDocument in interface DocumentDAO

createSubject

public Subject createSubject()
Crea un tema nuevo.

Specified by:
createSubject in interface DocumentDAO

createSubject

public Subject createSubject(Subject parent)
Crea un subtema nuevo para el tema especificado.

Specified by:
createSubject in interface DocumentDAO

createAttachment

public Attachment createAttachment()
Crea un anexo nuevo.

Specified by:
createAttachment in interface DocumentDAO

createReference

public Reference createReference()
Crea una referencia a un documento (en blanco).

Specified by:
createReference in interface DocumentDAO

createLink

public Link createLink()
Crea una liga externa.

Specified by:
createLink in interface DocumentDAO

createImage

public Image createImage()
Crea una imagen.

Specified by:
createImage in interface DocumentDAO