org.sharengo.wikitty
Class AbstractWikittyService

java.lang.Object
  extended by org.sharengo.wikitty.AbstractWikittyService
All Implemented Interfaces:
WikittyService
Direct Known Subclasses:
WikittyServiceInMemory

public abstract class AbstractWikittyService
extends Object
implements WikittyService

Abstract class that new implementation must extends. New implementation only have three method to implement:

  • getSearchEngin
  • getExtensionStorage
  • getWikittyStorage

    Version:
    $Revision: 27 $ Last update: $Date: 2010-04-28 17:56:01 +0200 (mer., 28 avril 2010) $ by : $Author: bpoussin $
    Author:
    poussin

    Nested Class Summary
    static class AbstractWikittyService.ExportTask
               
    static class AbstractWikittyService.ImportTask
               
    protected static class AbstractWikittyService.WikittyBatchUpdate
              Class used for import process, this class retain numberForCommit object before to send it to storage.
     
    Field Summary
    protected  WikittyExtensionMigration defaultExtensionMigration
              Default migration use to migrate a wikitty in last extension version
    protected  String EXPORT_DIRECTORY
              directory path where export asynchronous file are stored
    protected  String EXPORT_URL
              url used by client to retrieve export file when job is ended
    protected  ExecutorService importExportExecutor
              Executor that do import export task
    protected  Map<String,Future<String>> importExportTask
              contains all import or export task, key is job id send to client
    protected  int MAX_IMPORT_EXPORT_THREAD
              number of thread used to import/export task
     
    Fields inherited from interface org.sharengo.wikitty.WikittyService
    ALL_ELEMENTS
     
    Constructor Summary
    AbstractWikittyService()
               
     
    Method Summary
     void addLabel(String wikittyId, String label)
              add new lable to the wikitty object
     String asyncExportAllByCriteria(Criteria criteria)
               
     String asyncImportFromUri(String uri)
               
     void cancelJob(String jobId)
               
     void clear()
              Use with caution : It will delete ALL indexes from search engine !
     void delete(Collection<String> ids)
              delete all object if id exists
     void delete(String id)
              delete object if id exists
    protected  void delete(WikittyTransaction transaction, Collection<String> ids)
               
    protected static void fillBeanAttributes(TreeNode fromBean, TreeNodeBean toBean)
              Method copied from eugengo-0.7 generators
     Set<String> findAllAppliedLabels(String wikittyId)
              retrieve all labels applied on a wikitty object
     PagedResult<Wikitty> findAllByCriteria(Criteria criteria)
               
    protected  PagedResult<Wikitty> findAllByCriteria(WikittyTransaction transaction, Criteria criteria)
              Assume that this PagedResult contains wikitty id as result and return new PagedResult with Wikitty instance
     PagedResult<Wikitty> findAllByLabel(String label, int firstIndex, int endIndex)
               
     Wikitty findByCriteria(Criteria criteria)
              Fist lonely (or first one) wikitty object that match criteria, if no wikitty found return null
    protected  Wikitty findByCriteria(WikittyTransaction transaction, Criteria criteria)
               
     Wikitty findByLabel(String label)
               
     void freeJobResource(String jobId)
              delete job info and all resources associated to that job (files or other ...)
     List<String> getAllExtensionIds()
              Return all extension id (ex: "extName[version])")
     List<String> getAllExtensionsRequires(String extensionName)
              Return all extension id (ex: "extName[version])") where extensionName is required.
    protected abstract  WikittyExtensionStorage getExtensionStorage()
               
    protected abstract  WikittySearchEngin getSearchEngin()
               
    protected abstract  WikittyStorage getWikittyStorage()
               
     JobState infoJob(String jobId)
               
     List<Wikitty> restore(List<String> ids)
               
     Wikitty restore(String id)
               
    protected  List<Wikitty> restore(WikittyTransaction transaction, List<String> ids)
               
    protected  Wikitty restore(WikittyTransaction transaction, String id)
               
     Map<TreeNode,Integer> restoreChildren(String wikittyId, Criteria filter)
              Retrieve all wikitties children with count (no recursively) of an other one Wikitty reference by wikittyId MUST include the 'Node' extension
     WikittyExtension restoreExtension(String id)
              Load extension from id.
    protected  WikittyExtension restoreExtension(WikittyTransaction transaction, String id)
               
     WikittyExtension restoreExtensionLastVersion(String name)
              Search extension with name in last version
    protected  WikittyExtension restoreExtensionLastVersion(WikittyTransaction transaction, String name)
               
     Map.Entry<TreeNode,Integer> restoreNode(String wikittyId, Criteria filter)
              Retrieve wikitty node with count.
     Tree restoreTree(String wikittyId)
              Retrieve all wikitties children (recursively) of an other one Wikitty reference by wikittyId MUST include the 'Node' extension
    protected  Tree restoreTree(WikittyTransaction transaction, String wikittyId)
               
     Wikitty restoreVersion(String wikittyId, String version)
               
     UpdateResponse store(Collection<Wikitty> wikitties)
              Store and index wikitties object
     UpdateResponse store(Collection<Wikitty> wikitties, boolean disableAutoVersionIncrement)
              Store and index wikitties object
     UpdateResponse store(Wikitty wikitty)
              Store and index wikitty object
    protected  UpdateResponse store(WikittyTransaction transaction, Collection<Wikitty> wikitties, boolean disableAutoVersionIncrement)
               
     UpdateResponse storeExtension(Collection<WikittyExtension> exts)
              Save just one extension
     UpdateResponse storeExtension(WikittyExtension ext)
              Manage Update and creation.
    protected  UpdateResponse storeExtension(WikittyTransaction transaction, Collection<WikittyExtension> exts)
               
     UpdateResponse syncEngin()
              Synchronise search engine with wikitty strorage engine, i.e. clear and reindex all wikitties.
     String syncExportAllByCriteria(Criteria criteria)
               
     void syncImportFromUri(String uri)
               
     void syncImportFromXml(String xml)
              synchonous or not ?
    static TreeNode toBean(TreeNodeImpl impl)
              Method copied from eugengo-0.7 generators
    protected  Wikitty upgradeData(WikittyTransaction transaction, Wikitty wikitty)
               
     
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
     

    Field Detail

    MAX_IMPORT_EXPORT_THREAD

    protected int MAX_IMPORT_EXPORT_THREAD
    number of thread used to import/export task


    EXPORT_DIRECTORY

    protected String EXPORT_DIRECTORY
    directory path where export asynchronous file are stored


    EXPORT_URL

    protected String EXPORT_URL
    url used by client to retrieve export file when job is ended


    importExportExecutor

    protected ExecutorService importExportExecutor
    Executor that do import export task


    importExportTask

    protected Map<String,Future<String>> importExportTask
    contains all import or export task, key is job id send to client


    defaultExtensionMigration

    protected WikittyExtensionMigration defaultExtensionMigration
    Default migration use to migrate a wikitty in last extension version

    Constructor Detail

    AbstractWikittyService

    public AbstractWikittyService()
    Method Detail

    getSearchEngin

    protected abstract WikittySearchEngin getSearchEngin()

    getExtensionStorage

    protected abstract WikittyExtensionStorage getExtensionStorage()

    getWikittyStorage

    protected abstract WikittyStorage getWikittyStorage()

    store

    protected UpdateResponse store(WikittyTransaction transaction,
                                   Collection<Wikitty> wikitties,
                                   boolean disableAutoVersionIncrement)

    store

    public UpdateResponse store(Wikitty wikitty)
    Store and index wikitty object

    Specified by:
    store in interface WikittyService
    Parameters:
    wikitty -

    store

    public UpdateResponse store(Collection<Wikitty> wikitties)
    Store and index wikitties object

    Specified by:
    store in interface WikittyService
    Parameters:
    wikitty -

    store

    public UpdateResponse store(Collection<Wikitty> wikitties,
                                boolean disableAutoVersionIncrement)
    Store and index wikitties object

    Specified by:
    store in interface WikittyService
    Parameters:
    wikitty -

    getAllExtensionIds

    public List<String> getAllExtensionIds()
    Description copied from interface: WikittyService
    Return all extension id (ex: "extName[version])")

    Specified by:
    getAllExtensionIds in interface WikittyService
    Returns:

    getAllExtensionsRequires

    public List<String> getAllExtensionsRequires(String extensionName)
    Description copied from interface: WikittyService
    Return all extension id (ex: "extName[version])") where extensionName is required.

    Specified by:
    getAllExtensionsRequires in interface WikittyService
    Returns:

    storeExtension

    protected UpdateResponse storeExtension(WikittyTransaction transaction,
                                            Collection<WikittyExtension> exts)

    storeExtension

    public UpdateResponse storeExtension(Collection<WikittyExtension> exts)
    Save just one extension

    Specified by:
    storeExtension in interface WikittyService
    Parameters:
    ext -
    Throws:
    IOException

    storeExtension

    public UpdateResponse storeExtension(WikittyExtension ext)
    Description copied from interface: WikittyService
    Manage Update and creation.

    Specified by:
    storeExtension in interface WikittyService

    restoreExtension

    protected WikittyExtension restoreExtension(WikittyTransaction transaction,
                                                String id)

    restoreExtension

    public WikittyExtension restoreExtension(String id)
    Load extension from id. Id is 'name[version]'

    Specified by:
    restoreExtension in interface WikittyService
    Parameters:
    id -
    Returns:

    restoreExtensionLastVersion

    protected WikittyExtension restoreExtensionLastVersion(WikittyTransaction transaction,
                                                           String name)

    restoreExtensionLastVersion

    public WikittyExtension restoreExtensionLastVersion(String name)
    Description copied from interface: WikittyService
    Search extension with name in last version

    Specified by:
    restoreExtensionLastVersion in interface WikittyService
    Returns:
    the corresponding object, exception if no such object found.

    restore

    protected Wikitty restore(WikittyTransaction transaction,
                              String id)

    restore

    protected List<Wikitty> restore(WikittyTransaction transaction,
                                    List<String> ids)

    restore

    public List<Wikitty> restore(List<String> ids)
    Specified by:
    restore in interface WikittyService
    Parameters:
    ids - list of wikitty ids to restore
    Returns:
    list of corresponding wikitty, if one id is not valid (no object or deleted) this id is skip and result list have less elements than collection argument

    restore

    public Wikitty restore(String id)
    Specified by:
    restore in interface WikittyService
    Parameters:
    id - object id to restore
    Returns:
    the corresponding object, or null if object doesn't exist or is deleted

    upgradeData

    protected Wikitty upgradeData(WikittyTransaction transaction,
                                  Wikitty wikitty)

    delete

    protected void delete(WikittyTransaction transaction,
                          Collection<String> ids)
                   throws WikittyException
    Throws:
    WikittyException

    delete

    public void delete(String id)
    Description copied from interface: WikittyService
    delete object if id exists

    Specified by:
    delete in interface WikittyService
    Parameters:
    id - object's id to remove

    delete

    public void delete(Collection<String> ids)
    Description copied from interface: WikittyService
    delete all object if id exists

    Specified by:
    delete in interface WikittyService
    Parameters:
    ids - object's ids to remove

    clear

    public void clear()
    Use with caution : It will delete ALL indexes from search engine ! This operation should be disabled in production environment.

    Specified by:
    clear in interface WikittyService

    findAllByCriteria

    protected PagedResult<Wikitty> findAllByCriteria(WikittyTransaction transaction,
                                                     Criteria criteria)
    Assume that this PagedResult contains wikitty id as result and return new PagedResult with Wikitty instance


    findAllByCriteria

    public PagedResult<Wikitty> findAllByCriteria(Criteria criteria)
    Specified by:
    findAllByCriteria in interface WikittyService
    Returns:

    findByCriteria

    protected Wikitty findByCriteria(WikittyTransaction transaction,
                                     Criteria criteria)

    findByCriteria

    public Wikitty findByCriteria(Criteria criteria)
    Description copied from interface: WikittyService
    Fist lonely (or first one) wikitty object that match criteria, if no wikitty found return null

    Specified by:
    findByCriteria in interface WikittyService
    Returns:

    addLabel

    public void addLabel(String wikittyId,
                         String label)
    Description copied from interface: WikittyService
    add new lable to the wikitty object

    Specified by:
    addLabel in interface WikittyService
    Parameters:
    wikittyId - id of wikitty object to add label
    label - label to add

    findAllByLabel

    public PagedResult<Wikitty> findAllByLabel(String label,
                                               int firstIndex,
                                               int endIndex)
    Specified by:
    findAllByLabel in interface WikittyService
    Returns:

    findByLabel

    public Wikitty findByLabel(String label)
    Specified by:
    findByLabel in interface WikittyService
    Returns:

    findAllAppliedLabels

    public Set<String> findAllAppliedLabels(String wikittyId)
    Description copied from interface: WikittyService
    retrieve all labels applied on a wikitty object

    Specified by:
    findAllAppliedLabels in interface WikittyService
    Returns:

    restoreTree

    protected Tree restoreTree(WikittyTransaction transaction,
                               String wikittyId)

    restoreTree

    public Tree restoreTree(String wikittyId)
    Description copied from interface: WikittyService
    Retrieve all wikitties children (recursively) of an other one Wikitty reference by wikittyId MUST include the 'Node' extension

    Specified by:
    restoreTree in interface WikittyService
    Returns:

    restoreNode

    public Map.Entry<TreeNode,Integer> restoreNode(String wikittyId,
                                                   Criteria filter)
    Description copied from interface: WikittyService
    Retrieve wikitty node with count. Wikitty reference by wikittyId MUST include the 'Node' extension

    Specified by:
    restoreNode in interface WikittyService
    Returns:

    restoreChildren

    public Map<TreeNode,Integer> restoreChildren(String wikittyId,
                                                 Criteria filter)
    Description copied from interface: WikittyService
    Retrieve all wikitties children with count (no recursively) of an other one Wikitty reference by wikittyId MUST include the 'Node' extension

    Specified by:
    restoreChildren in interface WikittyService
    Returns:

    restoreVersion

    public Wikitty restoreVersion(String wikittyId,
                                  String version)
    Specified by:
    restoreVersion in interface WikittyService

    syncEngin

    public UpdateResponse syncEngin()
    Description copied from interface: WikittyService
    Synchronise search engine with wikitty strorage engine, i.e. clear and reindex all wikitties.

    Specified by:
    syncEngin in interface WikittyService
    Returns:

    syncImportFromXml

    public void syncImportFromXml(String xml)
    Description copied from interface: WikittyService
    synchonous or not ?

    Specified by:
    syncImportFromXml in interface WikittyService

    syncImportFromUri

    public void syncImportFromUri(String uri)
    Specified by:
    syncImportFromUri in interface WikittyService

    asyncImportFromUri

    public String asyncImportFromUri(String uri)
    Specified by:
    asyncImportFromUri in interface WikittyService
    Returns:
    a jobID

    asyncExportAllByCriteria

    public String asyncExportAllByCriteria(Criteria criteria)
    Specified by:
    asyncExportAllByCriteria in interface WikittyService
    Returns:

    syncExportAllByCriteria

    public String syncExportAllByCriteria(Criteria criteria)
    Specified by:
    syncExportAllByCriteria in interface WikittyService
    Returns:

    infoJob

    public JobState infoJob(String jobId)
    Specified by:
    infoJob in interface WikittyService
    Returns:

    cancelJob

    public void cancelJob(String jobId)
    Specified by:
    cancelJob in interface WikittyService

    freeJobResource

    public void freeJobResource(String jobId)
    Description copied from interface: WikittyService
    delete job info and all resources associated to that job (files or other ...)

    Specified by:
    freeJobResource in interface WikittyService

    fillBeanAttributes

    protected static void fillBeanAttributes(TreeNode fromBean,
                                             TreeNodeBean toBean)
    Method copied from eugengo-0.7 generators

    Parameters:
    bean -

    toBean

    public static TreeNode toBean(TreeNodeImpl impl)
    Method copied from eugengo-0.7 generators

    Parameters:
    impl -
    Returns:


    Copyright © 2009-2010 CodeLutin. All Rights Reserved.