org.apache.hadoop.hive.metastore
Class TUGIBasedProcessor<I extends ThriftHiveMetastore.Iface>
java.lang.Object
org.apache.thrift.TBaseProcessor
com.facebook.fb303.FacebookService.Processor
org.apache.hadoop.hive.metastore.api.ThriftHiveMetastore.Processor<ThriftHiveMetastore.Iface>
org.apache.hadoop.hive.metastore.TUGIBasedProcessor<I>
- All Implemented Interfaces:
- org.apache.thrift.TProcessor
public class TUGIBasedProcessor<I extends ThriftHiveMetastore.Iface>
- extends ThriftHiveMetastore.Processor<ThriftHiveMetastore.Iface>
TUGIBasedProcessor is used in unsecure mode for thrift metastore client server communication.
This processor checks whether the first rpc call after connection is set up is set_ugi()
through which client sends ugi to server. Processor then perform all subsequent rpcs on the
connection using ugi.doAs() so all actions are performed in client user context.
Note that old clients will never call set_ugi() and thus ugi will never be received on server
side, in which case server exhibits previous behavior and continues as usual.
Method Summary |
boolean |
process(org.apache.thrift.protocol.TProtocol in,
org.apache.thrift.protocol.TProtocol out)
|
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
TUGIBasedProcessor
public TUGIBasedProcessor(I iface)
throws SecurityException,
NoSuchFieldException,
IllegalArgumentException,
IllegalAccessException,
NoSuchMethodException,
InvocationTargetException
- Throws:
SecurityException
NoSuchFieldException
IllegalArgumentException
IllegalAccessException
NoSuchMethodException
InvocationTargetException
process
public boolean process(org.apache.thrift.protocol.TProtocol in,
org.apache.thrift.protocol.TProtocol out)
throws org.apache.thrift.TException
- Specified by:
process
in interface org.apache.thrift.TProcessor
- Overrides:
process
in class org.apache.thrift.TBaseProcessor
- Throws:
org.apache.thrift.TException
Copyright © 2011 The Apache Software Foundation