Package com.jalios.jcms
Class WeakLinkManager
- java.lang.Object
-
- com.jalios.jcms.BasicStoreListener
-
- com.jalios.jcms.WeakLinkManager
-
- All Implemented Interfaces:
PluginComponent
,StoreListener
public class WeakLinkManager extends BasicStoreListener
This class manages the index of weak references on publications. A weak reference is either a wiki link (e.g. [[Title]]) or the URL of a publication (display.jsp?id=xxx). The index is managed through a map (pub, set of referrer).- Since:
- jcms-5.5.0
- Author:
- Olivier Dedieu
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description java.util.Set<Publication>
extractPubSetFromWysiwyg(java.lang.String html)
Retrieve all publication referenced in the specified HTML/JHTML.java.util.Set<Publication>
extractWeakLinkSet(Publication pub)
Returns the set of publication weakly referenced by the given publication.static WeakLinkManager
getInstance()
java.util.Map<java.lang.String,java.util.Set<Publication>>
getUrlMap()
Returns the map of urls referenced by publications.java.util.Map<java.lang.String,java.util.Set<Publication>>
getUrlMap(Workspace ws, Member mbr)
Returns the map of urls referenced by publications of the given workspace.java.util.Set<Publication>
getUrlReferrerSet(java.lang.String url)
Returns all the publications referring the given URL.void
handleCommitUpdate(Storable storable, Storable oldStorable, boolean firstTime)
This method gets called when after a storable has been updated.void
handleCreate(Storable storable, boolean firstTime)
This method gets called when a storable is created.void
handleDelete(Storable storable, boolean firstTime)
This method gets called when a storable is deleted.void
indexPublication(Publication referrer)
Indexes the given publication.void
init()
Scans and indexes all existing publications then register a StoreListener (myself) to update the index at each change.void
reindexPublication(Publication referrer)
Reindexes the given publication.void
unindexPublication(Publication referrer)
Unindexes the given publication.-
Methods inherited from class com.jalios.jcms.BasicStoreListener
handlePrepareUpdate, init
-
-
-
-
Method Detail
-
getInstance
public static WeakLinkManager getInstance()
-
init
public void init()
Scans and indexes all existing publications then register a StoreListener (myself) to update the index at each change.- Since:
- jcms-5.5.0
-
indexPublication
public void indexPublication(Publication referrer)
Indexes the given publication.- Parameters:
referrer
- the publication to be indexed.- Since:
- jcms-5.5.0
-
unindexPublication
public void unindexPublication(Publication referrer)
Unindexes the given publication.- Parameters:
referrer
- the publication to be unindexed.- Since:
- jcms-5.5.0
-
reindexPublication
public void reindexPublication(Publication referrer)
Reindexes the given publication.- Parameters:
referrer
- the publication to be reindexed.- Since:
- jcms-5.5.0
-
getUrlReferrerSet
public java.util.Set<Publication> getUrlReferrerSet(java.lang.String url)
Returns all the publications referring the given URL. CAUTION: DO NOT alter the returned set, clone prior modification..- Parameters:
url
- the referee URL- Returns:
- all the publications referring the given URL.
- Since:
- jcms-5.5.0
-
getUrlMap
public java.util.Map<java.lang.String,java.util.Set<Publication>> getUrlMap()
Returns the map of urls referenced by publications. CAUTION: DO NOT alter the returned set, clone prior modification..- Returns:
- the map of urls referenced by publications.
- Since:
- jcms-5.5.0
-
getUrlMap
public java.util.Map<java.lang.String,java.util.Set<Publication>> getUrlMap(Workspace ws, Member mbr)
Returns the map of urls referenced by publications of the given workspace.- Parameters:
ws
- the workspacembr
- the member used for filtering- Returns:
- the map of urls referenced by publications.
- Since:
- jcms-5.5.0
-
extractWeakLinkSet
public java.util.Set<Publication> extractWeakLinkSet(Publication pub)
Returns the set of publication weakly referenced by the given publication.- Parameters:
pub
- the publication- Returns:
- the set of publication weakly referring the given publication.
- Since:
- jcms-5.5.0
-
handleCreate
public void handleCreate(Storable storable, boolean firstTime)
Description copied from interface:StoreListener
This method gets called when a storable is created.- Specified by:
handleCreate
in interfaceStoreListener
- Overrides:
handleCreate
in classBasicStoreListener
- Parameters:
storable
- the storablefirstTime
- true if it is the first time this operation is processed- See Also:
StoreListener.handleCreate(Storable, boolean)
-
handleCommitUpdate
public void handleCommitUpdate(Storable storable, Storable oldStorable, boolean firstTime)
Description copied from interface:StoreListener
This method gets called when after a storable has been updated.- Specified by:
handleCommitUpdate
in interfaceStoreListener
- Overrides:
handleCommitUpdate
in classBasicStoreListener
- Parameters:
storable
- the storable, this instance is the object that was created at first and that will be stored in jcms until deletion of the storable with this ID. You should always manipulate this object if you maintain any index.oldStorable
- the previous version of the storable, it is a clone, do not use in any index, it should only be used to access old values.firstTime
- true if it is the first time this operation is processed- See Also:
StoreListener.handleCommitUpdate(Storable, Storable, boolean)
-
handleDelete
public void handleDelete(Storable storable, boolean firstTime)
Description copied from interface:StoreListener
This method gets called when a storable is deleted.- Specified by:
handleDelete
in interfaceStoreListener
- Overrides:
handleDelete
in classBasicStoreListener
- Parameters:
storable
- the storablefirstTime
- true if it is the first time this operation is processed- See Also:
StoreListener.handleDelete(Storable, boolean)
-
extractPubSetFromWysiwyg
public java.util.Set<Publication> extractPubSetFromWysiwyg(java.lang.String html)
Retrieve all publication referenced in the specified HTML/JHTML.- Parameters:
html
- the HTML to inspect- Returns:
- a set of Publication, never returns null
-
-