wt.inf.sharing
Interface StructureSharingDelegate

All Known Implementing Classes:
DefaultStructureSharingDelegate

public interface StructureSharingDelegate

Contains the definitions of methods to be implemented for the specific structure delegates.

Supported API: false

Extendable: false


Method Summary
 QueryResult getStructureObjects(Persistable struct_handle)
          Returns all objects in the structure to be shared given the handle.
 void processCheckIn(Iterated object)
          Adds and removes shared objects.
 void processCreateLink(BinaryLink link)
          Adds new objects to be shared.
 void processDeleteLink(Class link_class, QueryKey role_a_id, QueryKey role_b_id)
          Removes new objects from the shared table.
 

Method Detail

getStructureObjects

public QueryResult getStructureObjects(Persistable struct_handle)
                                throws WTException
Returns all objects in the structure to be shared given the handle.

Supported API: false

Parameters:
struct_handle -
Returns:
QueryResult
Throws:
WTException

processCreateLink

public void processCreateLink(BinaryLink link)
                       throws WTException
Adds new objects to be shared. This method is called when a new link is created so that the SharedContainerMap can be appropriately updated. Typically when a new link is created between a shared object and an object that is not shared, this latter object should be added to the map.

Supported API: false

Parameters:
link -
Throws:
WTException

processDeleteLink

public void processDeleteLink(Class link_class,
                              QueryKey role_a_id,
                              QueryKey role_b_id)
Removes new objects from the shared table. This method is called when a link is deleted so that the SharedContainerMap can be appropriately updated. Typically when a link is deleted between two shared objects, it may be the case that one of them should be removed from the shared table. Exactly which object depends on the type of link. For example, for usage links, the object that plays the USES role should be removed.

Supported API: false

Parameters:
link_class -
role_a_id -
role_b_id -

processCheckIn

public void processCheckIn(Iterated object)
                    throws WTException
Adds and removes shared objects. This method is called when an Iterated object is created. Typically when an object is checked in, new relationships are added or removed and new shared objects may be added or removed.

Supported API: false

Parameters:
object -
Throws:
WTException