org.apache.lucene.replicator
Class PerSessionDirectoryFactory

java.lang.Object
  extended by org.apache.lucene.replicator.PerSessionDirectoryFactory
All Implemented Interfaces:
ReplicationClient.SourceDirectoryFactory

public class PerSessionDirectoryFactory
extends Object
implements ReplicationClient.SourceDirectoryFactory

A ReplicationClient.SourceDirectoryFactory which returns FSDirectory under a dedicated session directory. When a session is over, the entire directory is deleted.

WARNING: This API is experimental and might change in incompatible ways in the next release.

Constructor Summary
PerSessionDirectoryFactory(File workDir)
          Constructor with the given sources mapping.
 
Method Summary
 void cleanupSession(String sessionID)
          Called to denote that the replication actions for this session were finished and the directory is no longer needed.
 Directory getDirectory(String sessionID, String source)
          Returns the Directory to use for the given session and source.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

PerSessionDirectoryFactory

public PerSessionDirectoryFactory(File workDir)
Constructor with the given sources mapping.

Method Detail

getDirectory

public Directory getDirectory(String sessionID,
                              String source)
                       throws IOException
Description copied from interface: ReplicationClient.SourceDirectoryFactory
Returns the Directory to use for the given session and source. Implementations may e.g. return different directories for different sessions, or the same directory for all sessions. In that case, it is advised to clean the directory before it is used for a new session.

Specified by:
getDirectory in interface ReplicationClient.SourceDirectoryFactory
Throws:
IOException
See Also:
ReplicationClient.SourceDirectoryFactory.cleanupSession(String)

cleanupSession

public void cleanupSession(String sessionID)
                    throws IOException
Description copied from interface: ReplicationClient.SourceDirectoryFactory
Called to denote that the replication actions for this session were finished and the directory is no longer needed.

Specified by:
cleanupSession in interface ReplicationClient.SourceDirectoryFactory
Throws:
IOException


Copyright © 2000-2013 Apache Software Foundation. All Rights Reserved.