alfresco-community-repo/source/java/org/alfresco/repo/avm/LayeredDirectoryNode.java
Britt Park d0d7e61fcd Rework of Layered path resolutions that make snapshots of stores containing layers
actually capture the repository context at snapshot creation time. 
Gave ListEntry and MapEntry proper equals() and hashCode methods and backed out 
hibernate-cfg.properties changes.  Doh!  
Added cache configuration for AttributeService entities.
Did some warning removal in a few places.


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@5576 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2007-04-30 16:37:36 +00:00

98 lines
2.4 KiB
Java

package org.alfresco.repo.avm;
/**
* Interface for Layered Directories.
* @author britt
*/
public interface LayeredDirectoryNode extends DirectoryNode, Layered
{
/**
* Does this node have a primary indirection.
* @return Whether this is a primary indirection.
*/
public boolean getPrimaryIndirection();
/**
* Set whether this has a primary indirection.
* @param has Whether this has a primary indirection.
*/
public void setPrimaryIndirection(boolean has);
/**
* Get the layer id for this node.
* @return The layer id.
*/
public long getLayerID();
/**
* Set the layer id for this node.
* @param id The id to set.
*/
public void setLayerID(long id);
/**
* Set this to be a primary indirection from the path
* passed in.
* @param path The indirection path.
*/
public void rawSetPrimary(String path);
/**
* Turn this node into a primary indirection node with the indirection
* taken from the Lookup passed in.
* Performs a copy on write.
* @param lPath
*/
public void turnPrimary(Lookup lPath);
/**
* Retarget this directory.
* @param lPath The Lookup.
* @param target The new target path.
*/
public void retarget(Lookup lPath, String target);
/**
* Make visible a node deleted in a layer.
* @param lPath The Lookup.
* @param name The name to make visible.
*/
public void uncover(Lookup lPath, String name);
/**
* Remove name without leaving behind a deleted node.
* @param name The name of the child to flatten.
*/
public void flatten(String name);
/**
* Set the indirection.
* @param indirection
*/
public void setIndirection(String indirection);
/**
* Set the indirection version.
* @param version The version to set.
*/
public void setIndirectionVersion(int version);
/**
* Get the indirection version.
* @return The indirection version.
*/
public int getIndirectionVersion();
/**
* Set the opacity of this.
* @param opacity Whether this should be opaque, i.e. not see the things it
* in its indirection.
*/
public void setOpacity(boolean opacity);
/**
* Get the opacity of this.
* @return The opacity.
*/
public boolean getOpacity();
}