com.silverpeas.gallery.dao
Class MediaSQLQueryBuilder

java.lang.Object
  extended by com.silverpeas.gallery.dao.MediaSQLQueryBuilder
All Implemented Interfaces:
MediaCriteriaProcessor

public class MediaSQLQueryBuilder
extends Object
implements MediaCriteriaProcessor

A dynamic builder of a SQL query.


Constructor Summary
MediaSQLQueryBuilder()
           
 
Method Summary
 void endProcessing()
          Informs the processor the process is ended.
 List<Media> orderingResult(List<Media> media)
          This method must be called after the media list is entirely loaded.
 MediaCriteriaProcessor processAlbums(List<String> albumIds)
          Processes the criterion on the identifiers of albums (Actually, Album = Node).
 MediaCriteriaProcessor processComponentInstance(String componentInstanceId)
          Processes the criterion on the component instance identifier.
 MediaCriteriaProcessor processCreator(com.stratelia.webactiv.beans.admin.UserDetail creator)
          Processes the criterion on the creator of the medias.
 MediaCriteriaProcessor processIdentifiers(List<String> identifiers)
          Processes the criterion on the media identifiers.
 MediaCriteriaProcessor processMediaTypes(List<MediaType> mediaTypes)
          Processes the criterion on type of media.
 MediaCriteriaProcessor processNbDaysBeforeThatMediaIsNotVisible(Date referenceDate, int nbDaysBeforeThatMediaIsNotVisible)
          Processes the criterion on the nb of days before that a media is not visible.
 MediaCriteriaProcessor processOrdering(List<MediaCriteria.QUERY_ORDER_BY> orderings)
          Processes the criterion on orderings of the medias matching the criteria.
 MediaCriteriaProcessor processVisibility(MediaCriteria.VISIBILITY visibility, Date dateReference, com.stratelia.webactiv.beans.admin.UserDetail creator)
          Processes the criterion on the media visibility.
 org.apache.commons.lang3.tuple.Pair<String,List<Object>> result()
          Gets the result of the processing.
 void startProcessing()
          Informs the processor the start of the process.
 MediaCriteriaProcessor then()
          Informs the processor that there is a new criterion to process.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

MediaSQLQueryBuilder

public MediaSQLQueryBuilder()
Method Detail

startProcessing

public void startProcessing()
Description copied from interface: MediaCriteriaProcessor
Informs the processor the start of the process. The processor use this method to allocate all the resources required by the processing here. It uses it to initialize the processor state machine.

Specified by:
startProcessing in interface MediaCriteriaProcessor

endProcessing

public void endProcessing()
Description copied from interface: MediaCriteriaProcessor
Informs the processor the process is ended. The processor use this method to deallocate all the resources that were used during the processing. It uses it to tear down the processor state machine or to finalize some treatments.

The processing has to stop once this method is called. Hence, the call of process methods should result to nothing or to an exception.

Specified by:
endProcessing in interface MediaCriteriaProcessor

result

public org.apache.commons.lang3.tuple.Pair<String,List<Object>> result()
Description copied from interface: MediaCriteriaProcessor
Gets the result of the processing. Warning, the result can be incomplete if called before the processing ending (triggered with the call of MediaCriteriaProcessor.endProcessing() method).

Specified by:
result in interface MediaCriteriaProcessor
Returns:
the processing result.

then

public MediaCriteriaProcessor then()
Description copied from interface: MediaCriteriaProcessor
Informs the processor that there is a new criterion to process. This method must be used by the caller to chain the different criterion processings.

Specified by:
then in interface MediaCriteriaProcessor
Returns:
the processor itself.

processVisibility

public MediaCriteriaProcessor processVisibility(MediaCriteria.VISIBILITY visibility,
                                                Date dateReference,
                                                com.stratelia.webactiv.beans.admin.UserDetail creator)
Description copied from interface: MediaCriteriaProcessor
Processes the criterion on the media visibility.

Specified by:
processVisibility in interface MediaCriteriaProcessor
Parameters:
visibility - the requested visibility.
Returns:
the processor itself.

processComponentInstance

public MediaCriteriaProcessor processComponentInstance(String componentInstanceId)
Description copied from interface: MediaCriteriaProcessor
Processes the criterion on the component instance identifier.

Specified by:
processComponentInstance in interface MediaCriteriaProcessor
Parameters:
componentInstanceId - the identifier of the component instance concerned by the criterion.
Returns:
the processor itself.

processAlbums

public MediaCriteriaProcessor processAlbums(List<String> albumIds)
Description copied from interface: MediaCriteriaProcessor
Processes the criterion on the identifiers of albums (Actually, Album = Node).

Specified by:
processAlbums in interface MediaCriteriaProcessor
Parameters:
albumIds - the identifiers of albums concerned by the criterion.
Returns:
the processor itself.

processCreator

public MediaCriteriaProcessor processCreator(com.stratelia.webactiv.beans.admin.UserDetail creator)
Description copied from interface: MediaCriteriaProcessor
Processes the criterion on the creator of the medias.

Specified by:
processCreator in interface MediaCriteriaProcessor
Parameters:
creator - the user concerned by the criterion.
Returns:
the processor itself.

processMediaTypes

public MediaCriteriaProcessor processMediaTypes(List<MediaType> mediaTypes)
Description copied from interface: MediaCriteriaProcessor
Processes the criterion on type of media.

Specified by:
processMediaTypes in interface MediaCriteriaProcessor
Parameters:
mediaTypes - the media types concerned by the criterion.
Returns:
the processor itself.

processNbDaysBeforeThatMediaIsNotVisible

public MediaCriteriaProcessor processNbDaysBeforeThatMediaIsNotVisible(Date referenceDate,
                                                                       int nbDaysBeforeThatMediaIsNotVisible)
Description copied from interface: MediaCriteriaProcessor
Processes the criterion on the nb of days before that a media is not visible.

Specified by:
processNbDaysBeforeThatMediaIsNotVisible in interface MediaCriteriaProcessor
nbDaysBeforeThatMediaIsNotVisible - the nb of days before that a media is not visible.
Returns:
the processor itself.

processOrdering

public MediaCriteriaProcessor processOrdering(List<MediaCriteria.QUERY_ORDER_BY> orderings)
Description copied from interface: MediaCriteriaProcessor
Processes the criterion on orderings of the medias matching the criteria.

Specified by:
processOrdering in interface MediaCriteriaProcessor
Parameters:
orderings - the result orderings concerned by the criterion.
Returns:
the processor itself.

processIdentifiers

public MediaCriteriaProcessor processIdentifiers(List<String> identifiers)
Description copied from interface: MediaCriteriaProcessor
Processes the criterion on the media identifiers.

Specified by:
processIdentifiers in interface MediaCriteriaProcessor
Parameters:
identifiers - the media identifiers concerned by the criterion.
Returns:
the processor itself.

orderingResult

public List<Media> orderingResult(List<Media> media)
Description copied from interface: MediaCriteriaProcessor
This method must be called after the media list is entirely loaded. If an ordering was specified and if it was not possible to perform it by SQL clauses, then a logical sort is performed.

Specified by:
orderingResult in interface MediaCriteriaProcessor


Copyright © 2016 Silverpeas. All Rights Reserved.