Package org.apache.zookeeper.server
Class PrepRequestProcessor
java.lang.Object
java.lang.Thread
org.apache.zookeeper.server.ZooKeeperThread
org.apache.zookeeper.server.ZooKeeperCriticalThread
org.apache.zookeeper.server.PrepRequestProcessor
- All Implemented Interfaces:
Runnable
,RequestProcessor
This request processor is generally at the start of a RequestProcessor
change. It sets up any transactions associated with requests that change the
state of the system. It counts on ZooKeeperServer to update
outstandingRequests, so that it can take into account transactions that are
in the queue to be applied when generating a transaction.
-
Nested Class Summary
Nested ClassesNested classes/interfaces inherited from class java.lang.Thread
Thread.State, Thread.UncaughtExceptionHandler
Nested classes/interfaces inherited from interface org.apache.zookeeper.server.RequestProcessor
RequestProcessor.RequestProcessorException
-
Field Summary
Fields inherited from class java.lang.Thread
MAX_PRIORITY, MIN_PRIORITY, NORM_PRIORITY
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected void
addChangeRecord
(org.apache.zookeeper.server.ZooKeeperServer.ChangeRecord c) This method checks out the acl making sure it isn't null or empty, it has valid schemes and ids, and expanding any relative ids that depend on the requestor's authentication information.protected void
This method will be called inside the ProcessRequestThread, which is a singleton, so there will be a single thread calling this code.protected void
pRequest2Txn
(int type, long zxid, Request request, Record record, boolean deserialize) This method will be called inside the ProcessRequestThread, which is a singleton, so there will be a single thread calling this code.void
processRequest
(Request request) void
run()
static void
setFailCreate
(boolean b) method for tests to set failCreatevoid
shutdown()
Methods inherited from class org.apache.zookeeper.server.ZooKeeperCriticalThread
handleException
Methods inherited from class java.lang.Thread
activeCount, checkAccess, clone, countStackFrames, currentThread, dumpStack, enumerate, getAllStackTraces, getContextClassLoader, getDefaultUncaughtExceptionHandler, getId, getName, getPriority, getStackTrace, getState, getThreadGroup, getUncaughtExceptionHandler, holdsLock, interrupt, interrupted, isAlive, isDaemon, isInterrupted, join, join, join, onSpinWait, resume, setContextClassLoader, setDaemon, setDefaultUncaughtExceptionHandler, setName, setPriority, setUncaughtExceptionHandler, sleep, sleep, start, stop, suspend, toString, yield
-
Constructor Details
-
PrepRequestProcessor
-
-
Method Details
-
setFailCreate
public static void setFailCreate(boolean b) method for tests to set failCreate- Parameters:
b
-
-
run
public void run() -
addChangeRecord
protected void addChangeRecord(org.apache.zookeeper.server.ZooKeeperServer.ChangeRecord c) -
pRequest2Txn
protected void pRequest2Txn(int type, long zxid, Request request, Record record, boolean deserialize) throws KeeperException, IOException, RequestProcessor.RequestProcessorException This method will be called inside the ProcessRequestThread, which is a singleton, so there will be a single thread calling this code.- Parameters:
type
-zxid
-request
-record
-- Throws:
KeeperException
IOException
RequestProcessor.RequestProcessorException
-
pRequest
This method will be called inside the ProcessRequestThread, which is a singleton, so there will be a single thread calling this code.- Parameters:
request
-- Throws:
RequestProcessor.RequestProcessorException
-
fixupACL
public static List<ACL> fixupACL(String path, List<Id> authInfo, List<ACL> acls) throws KeeperException.InvalidACLException This method checks out the acl making sure it isn't null or empty, it has valid schemes and ids, and expanding any relative ids that depend on the requestor's authentication information.- Parameters:
authInfo
- list of ACL IDs associated with the client connectionacls
- list of ACLs being assigned to the node (create or setACL operation)- Returns:
- verified and expanded ACLs
- Throws:
KeeperException.InvalidACLException
-
processRequest
- Specified by:
processRequest
in interfaceRequestProcessor
-
shutdown
public void shutdown()- Specified by:
shutdown
in interfaceRequestProcessor
-